版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
斐波那契数列指标(MT4版)一个用于MetaTrader4平台的斐波那契数列指标。该指标主要用于在图表上绘制斐波那契时间线和相关的文本标签,以帮助交易者进行技术分析。交易逻辑思路和特点1.**初始化和清理**:-`init()`函数和`deinit()`函数分别用于指标的初始化和清理。`init()`函数调用了`GetDellName()`来删除旧的图形对象,但未做其他具体操作。-`deinit()`函数同样调用`GetDellName()`和`ObjectsDeleteAll()`来确保所有图形对象被删除,防止内存泄漏。2.**主迭代函数**:-`start()`函数是指标的主要迭代函数,它在每个图表周期中被调用。该函数调用了`GetStartLine()`、`GetYTG()`和`GetAvtor()`三个子函数来生成所需的图形元素。3.**斐波那契时间线生成**:-`GetStartLine()`函数根据给定的开始时间和结束时间,在图表上绘制多条垂直线,这些线的时间间隔基于斐波那契数列。每条线的位置和时间通过计算得出,并在图表上显示相应的文本标签。-该函数首先计算开始时间和结束时间的条形图偏移量,然后根据这些偏移量和斐波那契数列的间隔生成多条垂直线。每条线的位置通过`iTime()`函数计算,并使用`ObjectCreate()`创建垂直线对象。4.**颜色和样式管理**:-`GetYTG()`函数用于在图表上绘制三个不同颜色的标签(Q、C、S),这些标签的颜色在每次调用时循环变化。该函数还使用了静态计数器`count`来控制颜色的变化。-`GetAvtor()`函数在图表上绘制一系列字符标签,每个标签的颜色根据静态计数器`tick`的值动态变化。该函数使用了`GetColor()`函数来确定每个标签的颜色。5.**辅助函数**:-`GetTXT()`函数用于在图表上创建文本标签,可以指定标签的位置、内容和颜色。-`GetVLINE()`函数用于创建垂直线对象,可以指定线的颜色、样式和宽度。-`GetDellName()`函数用于删除所有包含特定名称的图形对象,以确保图表上没有旧的或重复的图形元素。-`GetColor()`函数根据给定的索引和时间计数器返回不同的颜色,用于动态改变标签的颜色。该斐波那契数列指标通过绘制垂直线和文本标签,帮助交易者在图表上进行技术分析。其主要特点包括:-使用斐波那契数列生成时间线,提供时间上的关键点。-动态改变标签和线条的颜色,增加图表的可读性和视觉吸引力。-通过静态计数器控制颜色和样式的变化,提供动态的视觉反馈。这些功能使得该指标在技术分析中具有一定的实用性和独特性,能够帮助交易者更好地识别市场趋势和潜在的交易机会。以下是指标源代码:#propertydescription"---------------------------------------------"#propertyindicator_chart_windowexterncolorcolor_RAY=Gold;externintSTYLE=4;//0-4externintWIDTH=1;//0-6externstringtime_start="2024.10.2810:12";externstringtime_finish="2024.10.2810:25";externintDELTA_K=4;//+------------------------------------------------------------------+//|Customindicatorinitializationfunction|//+------------------------------------------------------------------+intinit(){GetDellName();//----indicators//----return(0);}//+------------------------------------------------------------------+//|Customindicatordeinitializationfunction|//+------------------------------------------------------------------+intdeinit(){//----GetDellName();ObjectsDeleteAll();//----return(0);}//+------------------------------------------------------------------+//|Customindicatoriterationfunction|//+------------------------------------------------------------------+intstart(){//----GetStartLine(time_start,time_finish,"fibo1","luch1",color_RAY,STYLE,WIDTH);GetYTG();GetAvtor();//----return(0);}voidGetStartLine(stringti_s,stringti_f,stringn,stringl,colorc,ints,intw)//,s,w{GetDellName(l);GetVLINE(n+"qc_zoltan1",StrToTime(ti_s),c,s,w);GetVLINE(n+"qc_zoltan2",StrToTime(ti_f),c,s,w);datetimetime_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);intbars_1=iBarShift(Symbol(),1,time_s);intbars_2=iBarShift(Symbol(),1,time_f);Comment(bars_1,"",bars_2);intdelta_bars=bars_1-bars_2;doubleprise_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");intbar_shift=bars_2-delta_bars;if(bar_shift<0)time_c=iTime(Symbol(),1,0)+MathAbs(bar_shift)*60;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan3",time_c,c,s,w);//2GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan4",time_c,c,s,w);//3GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan5",time_c,c,s,w);//4GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan6",time_c,c,s,w);//8GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan7",time_c,c,s,w);//13GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan8",time_c,c,s,w);//21GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan9",time_c,c,s,w);//34GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan10",time_c,c,s,w);//55GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan011",time_c,c,s,w);//89GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan12",time_c,c,s,w);//144GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan13",time_c,c,s,w);//233GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan14",time_c,c,s,w);//377GetTXT(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;elsetime_c=iTime(Symbol(),1,bar_shift);GetVLINE(l+"qc_zoltan15",time_c,c,s,w);//610GetTXT(l+"qc_zoltan335",time_c,prise_b,c,"610");}//+------------------------------------------------------------------+//||//+------------------------------------------------------------------+voidLabel(stringname_label,stringtext_label,intcorner=2,intx=3,inty=15,intfont_size=10,stringfont_name="Arial",colortext_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);}//----+voidGetTXT(stringname_label,datetimet1,doublep1,colorc=Red,stringtxt="zero",doubleangle=90){datetimedlt=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,"TimesNewRoman",c);}voidGetVLINE(stringname_label,datetimet1,colorc=Red,intstyle=0,intwidh=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);}voidGetDellName(stringname_n=""){stringvName;for(inti=ObjectsTotal()-1;i>=0;i--){vName=ObjectName(i);if(StringFind(vName,name_n)!=-1)ObjectDelete(vName);}}//+------------------------------------------------------------------+//||//+------------------------------------------------------------------+voidGetYTG(){staticintcount=0;count++;if(count>2)count=0;colorcolor_Y=Red;colorcolor_T=Lime;colorcolor_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,"ArialBlack",color_Y);Label("qchaos_C","C",3,25,5,25,"ArialBlack",color_T);Label("qchaos_S","Q",3,40,20,25,"ArialBlack",color_G);//Label("qchaos_Q1","Q",3,13,32,25,"ArialBlack",color_G);}//+------------------------------------------------------------------+//||//+------------------------------------------------------------------+voidGetAvtor(){staticinttick=0;tick++;if(tick>=42)tick=0;stringtchar[256];inti;stringf_n="Arial";for(i=0;i<256;i++)tchar[i]=CharToStr(i);intx=0;inty=0;intz=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))
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 居民家庭供暖供气合同3篇
- 新风系统合同范本3篇
- 安徽电气行业劳动合同模板3篇
- 旅游包车司机服务合同3篇
- 安装工程合同规定3篇
- 招生协议书合同模板3篇
- 新门面房买卖合同3篇
- 市政工程劳动分包合同范本3篇
- 工业园租赁合同格式定制3篇
- 招标文件评标方法的改进3篇
- 风电场电力安全信息管理制度
- DB51T 5058-2020 四川省抗震设防超限高层民用建筑工程界定标准
- 梅溪湖给排水计算书(施工图)
- 合作共赢商务合作PPT模板(基础教育)
- 白酒厂污水处理设计(共35页)
- 《雾化吸入疗法在呼吸疾病中的应用专家共识2016年版》
- 胎元、命宫、身宫的推算
- 高速公路改扩建中的保通设计分析
- 美人蕉锈病病情调查报告
- 手工钨极氩弧焊焊接工艺指导书
- 分级护理细化标准[资料]
评论
0/150
提交评论