斐波那契时间序列,精准捕捉市场拐点 MT4免费公式源码!
指标名称:斐波那契时间序列
版本:MT4 ver. 2.01
斐波那契时间序列是一种技术分析工具,通过将斐波那契数列(如1, 2, 3, 5, 8, 13等)应用于时间轴上,用于预测市场价格的时间周期拐点。斐波那契时间序列在股票、外汇和其他市场分析中常用,帮助预测趋势反转或调整发生的时间节点。
斐波那契数列是一个递增的数字序列,每一个数是前两个数之和。这个数列在自然界和金融市场中经常出现,因此被用于技术分析。斐波那契时间序列假设市场价格波动的时间点会与斐波那契数值(或比例)相吻合,即市场的调整或反转可能发生在斐波那契数列中的某个时间间隔上。
应用步骤
-
选择起始点:在趋势(上涨或下跌)中选择一个明显的起点,通常是价格触底或峰值的地方。
-
应用斐波那契数列:将1, 2, 3, 5, 8, 13, 21等斐波那契数应用在时间周期上,以预测趋势可能的拐点。例如,从起始点开始,向后数2天、3天、5天等,找到这些天数作为潜在的趋势变化点。
-
观察市场变化:在这些时间点附近,观察价格走势是否有反转、调整或加速变化。如果市场在这些时间点附近确实发生变化,可以结合其他指标进一步确认。
-
结合其他技术指标:斐波那契时间序列通常和其他技术指标(如斐波那契回调线、RSI、MACD等)结合使用,以提高预测的准确性。
参数:
完整代码展示:
//+------------------------------------------------------------------+
//画斐波那契时间序列
#property version "2.01"
#property description "---------------------------------------------"
#property description "EA、指标公式分享"
#property description "EA、指标编写业务承接"
#property description "---------------------------------------------"
#property description "---------------------------------------------"
#property indicator_chart_window
extern color color_RAY = Gold;
extern int STYLE = 4;//0-4
extern int WIDTH = 1;//0-6
extern string time_start = "2024.10.28 10:12";
extern string time_finish = "2024.10.28 10:25";
extern int DELTA_K = 4;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
GetDellName();
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
GetDellName();
ObjectsDeleteAll();
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
//----
GetStartLine(time_start,time_finish,"fibo1","luch1",color_RAY,STYLE,WIDTH);
GetYTG();
GetAvtor();
//----
return(0);
}
//+------------------------------------------------------------------+
void GetTXT(string name_label,datetime t1, double p1,color c = Red, string txt = "zero",double angle = 90)
{
datetime dlt = DELTA_K * 60;
if(ObjectFind(name_label)<0)
ObjectCreate(name_label,OBJ_TEXT,0,t1-dlt,p1,0,0);
ObjectSet(name_label,OBJPROP_ANGLE,angle);
ObjectSetText(name_label, txt, 10, "Times New Roman", c);
}
void GetVLINE(string name_label,datetime t1,color c = Red,int style = 0, int widh = 0)
{
if(ObjectFind(name_label)<0) // ObjectDelete(name_label);
ObjectCreate(name_label,OBJ_VLINE,0,t1,0,0,0);
ObjectSet(name_label,OBJPROP_COLOR,c);
ObjectSet(name_label,OBJPROP_STYLE,style);
ObjectSet(name_label,OBJPROP_WIDTH,widh);
}
void GetDellName(string name_n = "")
{
string vName;
for(int i=ObjectsTotal()-1; i>=0; i--)
{
vName = ObjectName(i);
if(StringFind(vName,name_n) !=-1)
ObjectDelete(vName);
}
}
//----+ôóíêöèÿ ñòðîèò âñå ëèíèè fibo time
void GetStartLine(string ti_s, string ti_f, string n, string l, color c, int s, int w) //,s,w
{
GetDellName(l);
GetVLINE(n+"qc_zoltan1",StrToTime(ti_s),c,s,w);
GetVLINE(n+"qc_zoltan2",StrToTime(ti_f),c,s,w);
datetime time_s =0, time_f =0, time_c = 0;
if(ObjectFind(n+"qc_zoltan1")!=-1)
time_s = ObjectGet(n+"qc_zoltan1",OBJPROP_TIME1);
if(ObjectFind(n+"qc_zoltan2")!=-1)
time_f = ObjectGet(n+"qc_zoltan2",OBJPROP_TIME1);
int bars_1 = iBarShift(Symbol(),1,time_s);
int bars_2 = iBarShift(Symbol(),1,time_f);
Comment(bars_1," ",bars_2);
int delta_bars = bars_1-bars_2;
double prise_b = iClose(Symbol(),1,bars_1);
GetTXT(l+"qc_zoltan11",time_s, prise_b,c,"0");
GetTXT(l+"qc_zoltan22",time_f, prise_b,c,"1");
int bar_shift = bars_2 - delta_bars;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan3",time_c,c,s,w);//2
GetTXT(l+"qc_zoltan33",time_c, prise_b,c,"2");
bar_shift = bar_shift - delta_bars;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan4",time_c,c,s,w);//3
GetTXT(l+"qc_zoltan44",time_c, prise_b,c,"3");
bar_shift = bar_shift - delta_bars*2;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan5",time_c,c,s,w);//4
GetTXT(l+"qc_zoltan55",time_c, prise_b,c,"5");
bar_shift = bar_shift - delta_bars*3;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan6",time_c,c,s,w);//8
GetTXT(l+"qc_zoltan66",time_c, prise_b,c,"8");
bar_shift = bar_shift - delta_bars*5;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan7",time_c,c,s,w);//13
GetTXT(l+"qc_zoltan77",time_c, prise_b,c,"13");
bar_shift = bar_shift - delta_bars*8;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan8",time_c,c,s,w);//21
GetTXT(l+"qc_zoltan88",time_c, prise_b,c,"21");
bar_shift = bar_shift - delta_bars*13;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan9",time_c,c,s,w);//34
GetTXT(l+"qc_zoltan99",time_c, prise_b,c,"34");
bar_shift = bar_shift - delta_bars*21;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan10",time_c,c,s,w);//55
GetTXT(l+"qc_zoltan331",time_c, prise_b,c,"55");
bar_shift = bar_shift - delta_bars*34;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan011",time_c,c,s,w);//89
GetTXT(l+"qc_zoltan332",time_c, prise_b,c,"89");
bar_shift = bar_shift - delta_bars*55;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan12",time_c,c,s,w);//144
GetTXT(l+"qc_zoltan3322",time_c, prise_b,c,"144");
bar_shift = bar_shift - delta_bars*89;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan13",time_c,c,s,w);//233
GetTXT(l+"qc_zoltan333",time_c, prise_b,c,"233");
bar_shift = bar_shift - delta_bars*144;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan14",time_c,c,s,w);//377
GetTXT(l+"qc_zoltan334",time_c, prise_b,c,"377");
bar_shift = bar_shift - delta_bars*233;
if(bar_shift<0)
time_c = iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;
else
time_c = iTime(Symbol(),1,bar_shift);
GetVLINE(l+"qc_zoltan15",time_c,c,s,w);//610
GetTXT(l+"qc_zoltan335",time_c, prise_b,c,"610");
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void Label(string name_label,
string text_label,
int corner = 2,
int x = 3,
int y = 15,
int font_size = 10,
string font_name = "Arial",
color text_color = LimeGreen
)
{
if(ObjectFind(name_label)!=-1)
ObjectDelete(name_label);
ObjectCreate(name_label,OBJ_LABEL,0,0,0,0,0);
ObjectSet(name_label,OBJPROP_CORNER,corner);
ObjectSet(name_label,OBJPROP_XDISTANCE,x);
ObjectSet(name_label,OBJPROP_YDISTANCE,y);
ObjectSetText(name_label,text_label,font_size,font_name,text_color);
}
//----+
void GetYTG()
{
static int count = 0;
count++;
if(count>2)
count = 0;
color color_Y = Red;
color color_T = Lime;
color color_G = Blue;
if(count==1)
{
color_Y = Crimson;
color_T = LimeGreen;
color_G = DodgerBlue;
}
if(count==2)
{
color_Y = OrangeRed;
color_T = ForestGreen;
color_G = RoyalBlue;
}
Label("qchaos_Q","Q",3,40,20,25,"Arial Black",color_Y);
Label("qchaos_C","C",3,25,5,25,"Arial Black",color_T);
Label("qchaos_S","Q",3,40,20,25,"Arial Black",color_G);
//Label("qchaos_Q1","Q" ,3,13,32,25,"Arial Black",color_G);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void GetAvtor()
{
static int tick = 0;
tick++;
if(tick >= 42)
tick = 0;
string tchar[256];
int i;
string f_n = "Arial";
for(i = 0; i < 256; i++)
tchar[i] = CharToStr(i);
int x=0;
int y=0;
int z=0;
Label("label1", tchar[87], 2+x, 5, 15, 10, f_n, GetColor(41, tick));
Label("label2", tchar[101], 2+x, 18, 15, 10, f_n, GetColor(0, tick));
Label("label3", tchar[67], 2+x, 24, 15, 10, f_n, GetColor(1, tick));
Label("label4", tchar[104], 2+x, 32, 15, 10, f_n, GetColor(2, tick));
Label("label5", tchar[97], 2+x, 40, 15, 10, f_n, GetColor(3, tick));
Label("label6", tchar[116], 2+x, 48, 15, 10, f_n, GetColor(4, tick));
Label("label7", tchar[32], 2+x, 56, 15, 10, f_n, GetColor(5, tick));
Label("label8", tchar[58], 2+x, 54, 15, 10, f_n, GetColor(6, tick));
Label("label9", tchar[81], 2+x, 61, 15, 10, f_n, GetColor(7, tick));
Label("label10", tchar[67], 2+x, 70, 15, 10, f_n, GetColor(8, tick));
Label("label11", tchar[104], 2+x, 78, 15, 10, f_n, GetColor(9, tick));
Label("label12", tchar[97], 2+x, 86, 15, 10, f_n, GetColor(10, tick));
Label("label13", tchar[111], 2+x, 94, 15, 10, f_n, GetColor(11, tick));
Label("label14", tchar[115], 2+x, 102, 15, 10, f_n, GetColor(12, tick));
Label("label15", tchar[48], 2+x, 110, 15, 10, f_n, GetColor(13, tick));
Label("label16", tchar[48], 2+x, 118, 15, 10, f_n, GetColor(14, tick));
Label("label17", tchar[49], 2+x, 126, 15, 10, f_n, GetColor(15, tick));
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
color GetColor(int n, int t)
{
color colir = LimeGreen;
if(n==t || n+1==t || n+2==t)
colir = Yellow;
if(n+10==t || n+11==t || n+12==t)
colir = Aqua;
if(n+20==t || n+21==t || n+22==t)
colir = Gold;
return(colir);
}
//+------------------------------------------------------------------+
相关文章:

斐波那契时间序列,精准捕捉市场拐点 MT4免费公式源码!
指标名称:斐波那契时间序列 版本:MT4 ver. 2.01 斐波那契时间序列是一种技术分析工具,通过将斐波那契数列(如1, 2, 3, 5, 8, 13等)应用于时间轴上,用于预测市场价格的时间周期拐点。斐波那契时间序列在股…...

计算机的错误计算(一百四十)
摘要 探讨 MATLAB 中函数 的计算精度。 从计算机的错误计算(一百三十九)知,对于对数运算,当真数在 1 附近时,计算机的输出会出现较大误差。为此,IEEE 754-2019 中专门定义有函数 其目的就是当自变量在 …...

JavaEE初阶---网络原理(四)--IP协议/DNS协议
文章目录 1.初识网络层(了解即可)2.地址管理2.1动态分配2.2网络地址转换2.3IP-v6最终解 3.网段划分4.以太网协议--数据链路层5.DNS应用层协议 1.初识网络层(了解即可) 网络层做的事情就是下面的两个: 1)地…...
LeetCode20:有效的括号
原题地址:. - 力扣(LeetCode) 题目描述 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合…...
简单介绍Class文件、Dex文件以及ELF文件
Class文件 Class文件是Java源代码文件经Java编译器编译后得到的Java字节码文件。对比Linux、Windows上的可执行文件而言,Class文件可以看作是Java虚拟机的可执行文件。 Dex文件 Dex文件是Android平台上与传统Class文件对应的Java字节码文件。Dex文件的核心内容与Cl…...

Vivo开奖了,劝退价。。
vivo 也开奖了,不过有小伙伴反馈是个劝退价,甚至不如隔壁的 oppo,要说这两家也是渊源颇深,一家是绿厂,一家是蓝厂,高管也都是早期步步高出来的。 给大家盘一下开奖的信息,方便大家横向做个对比&…...

鸿蒙打包hvigorw clean报错No npmrc file is matched in the current user folder解决
问题 在执行hvigorw clean等命令时,报错如下: Error: The hvigor depends on the npmrc file. No npmrc file is matched in the current user folder. Configure the npmrc file first解决方案 在用户当前目录下新建.npmrc文件,并配置如下…...

无人机救援系统基本组成
无人机救援系统基本组成 1. 源由2. 组成2.1 无人机载具2.1.1 多旋翼2.1.2 垂起固定翼2.1.3 智能避障2.1.4 物资投递 2.2 智能吊舱2.2.1 云台2.2.2 高清摄像2.2.3 红外热成像2.2.4 激光测距2.2.5 目标跟踪 2.3 通讯链路2.3.1 超长距离通信2.3.2 长距离通信2.3.3 中等距离通信 2.…...
git入门教程
git入门教程1:git简介git入门教程2:git发展历史git入门教程3:安装配置git入门教程4:git工作流程git入门教程5:git仓库操作git入门教程6:git基本版本控制git入门教程7:git与远程仓库的交互git入门…...

AMBA:AHB_Slave_Mux的解析与HREADY、HREADYOUT
相关阅读 AMBAhttps://blog.csdn.net/weixin_45791458/category_12800219.html?spm1001.2014.3001.5482 简介 从1999年的AMBA2发布以来,AHB协议中就存在数据选择器,如图1所示的AHB2协议的总线互连。 图1 AHB2的总线互连 这幅图画得比较粗糙࿰…...

初始Linux (2) : 权限
1. su [用户名]及权限概念 Linux中有两种用户:普通用户、超级用户 超级用户可以再 linux 系统下做任何事情,不受限制;而普通用户只能做有限的事情。 可以使用指令:su -快速进入root账户,但需要输入相关密码。 超级用…...

在Mac下安装时间序列软件Hector
1.软件介绍 Hector 是一款开源软件,专用于 GNSS 时间序列数据的处理与分析,广泛应用于地球科学研究。它帮助研究人员从 GNSS 数据中提取长期趋势、周期性成分,并建模噪声特性,用于地壳形变、地震影响和气候变化等方面的研究。Hec…...

JVM1.8内存模型
一、内存模型概览 本文介绍的是JDK1.8的内存模型。1.8同1.7相比,最大的差别就是元空间取代了永久代。元空间的本质和永久代类似,都是堆JVM规范中方法区的实现。不过元空间与永久代之间最大的区别在于:元空间并不存在虚拟机中,而是…...

windows C#-类型系统(上)
C# 是一种强类型语言。 每个变量和常量都有一个类型,每个求值的表达式也是如此。 每个方法声明都为每个输入参数和返回值指定名称、类型和种类(值、引用或输出)。 .NET 类库定义了内置数值类型和表示各种构造的复杂类型。 其中包括文件系统、网络连接、对象的集合和…...

【酷狗音乐】逆向登录参数分析
mid、uuid参数 从cookie里面取值kg_mid,没有就生成 dfid也是从cookie里面取的kg_dfid 清空cookie dfid "-"也是可以的 md5加密了一个随机uuid import uuid import hashlibuuid1 str(uuid.uuid4())def md5_encrypt(text):return hashlib.md5(text.enco…...
Jenkins面试整理-Jenkins Pipeline 是什么?
Jenkins Pipeline 是一种将 Jenkins 中的持续集成和持续交付(CI/CD)流程定义为代码的方式。Pipeline 提供了一种灵活、可维护的方式,通过脚本来描述构建、测试、部署等流程。Jenkins Pipeline 使用 Groovy 作为脚本语言,并可以通过 Jenkinsfile 来定义和管理流水线。 Jenki…...

RHCE第三次实验
要求 (1)学生信息网站只有song和tian两人可以访问,其他用户不能访问。 (2)访问缴费网站实现数据加密基于https访问。 架设一台NFS服务器,并按照以下要求配置 1、开放/nfs/shared目录,供所…...

基于LORA的一主多从监测系统_4G模块上巴法云
临时添加一个更新,更换云平台为巴法云,事情的起因是因为阿里云这个老六,早上睡了一觉起来发短信告诉我云平台给我停了,得交钱,好嘛,不过也没办法现在这基本都收费,当然还有onenet可以用…...

pip使用
pip全称pip install package,是python第三方包sitepackage管理的工具,安装,卸载第三方包。安装python时可以选择安装pip,或自己安装pip 查看pip是否安装:pip --version 安装pip :pip python -m pip install --upgrade…...
Django ORM详解:外键使用(外键逻辑关联)与查询优化
Django数据库迁移 # 创建迁移 python manage.py makemigrations your_app_name # 应用迁移 python manage.py migrate # 查看迁移状态 python manage.py showmigrations # 回滚迁移 python manage.py migrate your_app_name 0001 # 修改表后,删除迁移记录和表删除迁移记录后重…...

C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...

html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...

Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...