浮动

 

非常有趣的指标。见所附图片。

红色是平盘。看来我们没有在平盘期间进行交易。

附加的文件:
floatma.mql  1 kb
float_mt3.jpg  83 kb
 

其他浮动指标。

附加的文件:
 

浮动指示器。

附加的文件:
float.jpg  98 kb
float.mql  9 kb
 

重写浮动指标到.mq4?

你好,新数码。

有没有人把浮动指标改写成MT4的.mq4脚本? 我看到这里有一个.mql版本。 在SB论坛上有关于这个指标的讨论,另外还写了一个专家,但是这个指标(由Barry Stander写的)表现得很糟糕,而且没有人能够找到源代码。 我发现以下由'Bigblock'在Gordago网站上发布的脚本。我不确定这是什么脚本,但也许对于一些想让它作为.mq4文件工作的雄心勃勃的人来说,其逻辑是清楚的? 它可能与barry S.的'Float'相同,尽管这个脚本比较长(我不是编码员)

在上面发布的Float指标中,我比较喜欢的是创造蓝色直方图线的斜坡的那个。 我还附上了SB论坛上的那个有问题的Float文件。

-MJ

-----------------------------

/*[[

名称 := FLOAT

作者 := Bigblockfw

独立窗口 := 是

第一颜色 :=蓝色

第一绘图类型:=直方图

第一符号 := 217

使用第二个数据 := 是

第二颜色 := 红色

第二绘图类型 := 线条

第二符号 := 218

将Float的值改为100,可以在15分钟的图表上正常显示。

200 = 30分钟 20 = 5分钟

]]*/

输入 : float(100),use_fibos(1),Backtesting(0);

变量:

shift(0),f(0),c1(0),high_bar(0),low_bar(0),bar_high(0),bar_low(0)。

变量:

cumulativeV(0),FLOATV(0),cumulativeV2(0),loopbegin2(0),swing(0),swing_time(0)。

变量 : swingv(0),loopbegin1(0),cnt(0)。

变量 : first(True),first1(True),prevbars(0)。

变量 : cvstart(0),cvend(0),bar(0),newcv(0),CV(0),CV2(0)。

变量 : fib23(0),fib38(0),fib50(0),fib62(0),fib76(0)。

变量 : dinap0(0),dinap1(0),dinap2(0),dinap3(0),dinap4(0),dinap5(0)。

变量 : CVL(0),CVL1(0),CVL2(0),CVL3(0),CVL4(0)。

cumulativeV=0。

cumulativeV2=0。

SetLoopCount(0);

如果Bars 1,那么

first = True。

first1 = True。

prevbars = Bars;

FLOATV=0。

如果第一条,则开始

loopbegin1 = Bars-float-1;

loopbegin2 = Bars-float-1;

first = False。

loopbegin1 = loopbegin1+1;

对于shift = loopbegin1下降到0开始

//找到高点和低点

high_bar = H;

Low_bar = L[Lowest(MODE_LOW,float,float)] 。

//找到条形计数

bars_high = highest(MODE_HIGH,float,float);

bars_low = lowest(MODE_LOW,float,float);

//寻找波动价格差

波段 = H-

L[Lowest(MODE_LOW,float,float)]。

//找到浮动时间的barcount

swing_time = abs(bar_low-bars_high);

//找出浮动期的累积成交量

IF bars_high < bars_low then

{

cvstart=bars_low。

cvend=bars_high;

}

否则

{

cvstart=bars_high;

cvend=bars_low;

}

如果first1和FLOATV=0 那么开始

for shift = cvstart downto cvend Begin {

FLOATV=FLOATV+V[shift]。

first1 = False;}

结束。

//找出自上次成交以来的累计成交量

for shift = cvstart downto 0 Begin

cumulativeV=cumulativeV+V[shift];

如果 cumulativeV>=FLOATV 则{

cumulativeV=0。

}

SetIndexValue(shift,cumulativeV*0.001);//蓝色

SetIndexValue2(shift,FLOATV*0.001);//红色

评论(

"n", "高点是",bar_high," bars ago"。

"/n", "Low was ",bar_low," bars ago","/n"。

"/n", "Float time was = ", swing_time," bars",

"/n", "Float Vol. left = ",FLOATV-cumulativeV,

"/n", "Float Volume = ",FLOATV

);

MoveObject("swingtop",OBJ_TRENDLINE,Time[cvstart],high_bar,Time[1],high_bar,Blue,1,STYLE_SOLID) 。

MoveObject("swingbottom",OBJ_TRENDLINE,Time[cvstart], Low_bar,Time[1], Low_bar,Blue,1,STYLE_SOLID);

//fibos

如果use_fibos=1,那么{

fib23=((high_bar-Low_bar)*0.236)+Low_bar;

fib38=((high_bar-Low_bar)*0.382)+Low_bar;

fib50=((high_bar-low_bar)/2)+Low_bar。

fib62=((high_bar-Low_bar)*0.618)+Low_bar;

fib76=((high_bar-Low_bar)*0.764)+Low_bar;

dinap0=(Low_bar+fib23)/2。

dinap1=(fib23+fib38)/2;

dinap2=(fib38+fib50)/2;

dinap3=(fib50+fib62)/2;

dinap4=(fib62+fib76)/2;

dinap5=(high_bar+fib76)/2。

MoveObject("fib23",OBJ_TRENDLINE,Time[cvstart],fib23,Time[1],fib23,Green,1,STYLE_DASH) 。

SetObjectText("23", "23.6", "Arial",8,绿色)。

MoveObject("23",OBJ_TEXT,time[0],fib23,time[0],fib23,Green)。

MoveObject("fib38",OBJ_TRENDLINE,Time[cvstart],fib38,Time[1],fib38,Green,1,STYLE_DASH);

SetObjectText("38", "38.2", "Arial",8,绿色)。

MoveObject("38",OBJ_TEXT,time[0],fib38,time[0],fib38,Green);

MoveObject("fib50",OBJ_TRENDLINE,Time[cvstart],fib50,Time[1],fib50,Red,2,STYLE_SOLID);

SetObjectText("50", "50", "Arial",8,green);

MoveObject("50",OBJ_TEXT,time[0],fib50,time[0],fib50,Green);

MoveObject("fib62",OBJ_TRENDLINE,Time[cvstart],fib62,Time[1],fib62,Green,1,STYLE_DASH);

SetObjectText("62", "61.8", "Arial",8,绿色)。

MoveObject("62",OBJ_TEXT,time[0],fib62,time[0],fib62,Green);

MoveObject("fib76",OBJ_TRENDLINE,Time[cvstart],fib76,Time[1],fib76,Green,1,STYLE_DASH);

SetObjectText("76", "76.4", "Arial",8,绿色)。

MoveObject("76",OBJ_TEXT,time[0],fib76,time[0],fib76,Green);

MoveObject("dinap0",OBJ_TRENDLINE,Time[cvstart],dinap0,Time[1],dinap0,Red,1,STYLE_DOT);

MoveObject("dinap1",OBJ_TRENDLINE,Time[cvstart],dinap1,Time[1],dinap1,Red,1,STYLE_DOT);

MoveObject("dinap2",OBJ_TRENDLINE,Time[cvstart],dinap2,Time[1],dinap2,Red,1,STYLE_DOT)。

MoveObject("dinap3",OBJ_TRENDLINE,Time[cvstart],dinap3,Time[1],dinap3,Red,1,STYLE_DOT);

MoveObject("dinap4",OBJ_TRENDLINE,Time[cvstart],dinap4,Time[1],dinap4,Red,1,STYLE_DOT)。

MoveObject("dinap5",OBJ_TRENDLINE,Time[cvstart],dinap5,Time[1],dinap5,Red,1,STYLE_DOT) 。

}

//转换。浮动线。这些画的是计算浮动的线。

//如果你把 "趋势线 "改为 "V线",它也会通过震荡器来绘制,可能很有趣

MoveObject("CVSTART",OBJ_TRENDLINE,Time[cvstart],high_bar,Time[cvstart],Low_bar*point,Blue,1,STYLE_SOLID) 。

MoveObject("CVEND",OBJ_TRENDLINE,Time[cvend],high_bar,Time[cvend],Low_bar*point,Blue,1,STYLE_SOLID);

//反转浮点预测。这些只是基于时间的。

//看到蓝色柱状图的真实浮点值。

//如果你把 "趋势线 "改为 "V线",它也会通过震荡器进行绘制,可能会很有趣。

if cvend-swing_time>0 then {

MoveObject("swingend",OBJ_TRENDLINE,Time[(cvend-swing_time)+5],high_bar,Time[cvend-swing_time+5],Low_bar,Red,1,STYLE_DOT) 。

}

else DelObject("swingend",0,0,0);

如果cvend-(swing_time*2)>0 那么 {

MoveObject("swingend2",OBJ_TRENDLINE,Time[(cvend-(swing_time*2))+5],high_bar,Time[cvend-(swing_time*2)+5],Low_bar,Red,1,STYLE_DOT) 。

}

else DelObject("swingend2",0,0,0);

如果cvend-(swing_time*3)>0 那么 {

MoveObject("swingend3",OBJ_TRENDLINE,Time[(cvend-(swing_time*3))+5],high_bar,Time[cvend-(swing_time*3)+5], Low_bar,Red,1,STYLE_DOT);

}

else DelObject("swingend3",0,0,0)。

如果cvend-(swing_time*4)>0 那么 {

MoveObject("swingend4",OBJ_TRENDLINE,Time[(cvend-(swing_time*4))+5],high_bar,Time[cvend-(swing_time*4)+5], Low_bar,Red,1,STYLE_DOT);

}

else DelObject("swingend4",0,0,0);

如果cvend-(swing_time*5)>0 那么 {

MoveObject("swingend5",OBJ_TRENDLINE,Time[(cvend-(swing_time*5))+5],high_bar,Time[cvend-(swing_time*5)+5], Low_bar,Red,1,STYLE_DOT);

}

else DelObject("swingend5",0,0,0);

如果cvend-(swing_time*6)>0 那么 {

MoveObject("swingend6",OBJ_TRENDLINE,Time[cvend-(swing_time*6)+5],high_bar,Time[cvend-(swing_time*6)+5], Low_bar,Red,1,STYLE_DOT);

}

else DelObject("swingend6",0,0,0);

如果cvend-(swing_time*7)>0 那么 {

MoveObject("swingend7",OBJ_TRENDLINE,Time[cvend-(swing_time*7)+5],high_bar,Time[cvend-(swing_time*7)+5], Low_bar,Red,1,STYLE_DOT);

}

else DelObject("swingend7",0,0,0);

如果cvend-(swing_time*8)>0 那么 {

MoveObject("swingend8",OBJ_TRENDLINE,Time[cvend-(swing_time*8)+5],high_bar,Time[cvend-(swing_time*8)+5], Low_bar,Red,1,STYLE_DOT)。

}

else DelObject("swingend8",0,0,0);

如果cvend-(swing_time*9)>0 那么 {

MoveObject("swingend9",OBJ_TRENDLINE,Time[cvend-(swing_time*9)+5],high_bar,Time[cvend-(swing_time*9)+5], Low_bar,Red,1,STYLE_DOT);

}

else DelObject("swingend9",0,0,0);

//注释掉你不使用的东西,这将有助于提高速度。

如果Backtesting = 1 那么 {

SetGlobalVariable("fib23",fib23)。

SetGlobalVariable("fib38",fib38);

SetGlobalVariable("fib50",fib50);

SetGlobalVariable("fib62",fib62);

SetGlobalVariable("fib76",fib76);

SetGlobalVariable("dinap0",dinap0);

SetGlobalVariable("dinap1",dinap1);

SetGlobalVariable("dinap2",dinap2);

SetGlobalVariable("dinap3",dinap3);

SetGlobalVariable("dinap4",dinap4);

SetGlobalVariable("dinap5",dinap5);

SetGlobalVariable("swingtop",high_bar);

SetGlobalVariable("swingbottom",Low_bar);

SetGlobalVariable("CVSTART",CVSTART);

SetGlobalVariable("CVEND",CVEND);

SetGlobalVariable("FLOATV",FLOATV);

SetGlobalVariable("cumulativeV",cumulativeV);

SetGlobalVariable("swing_time",swing_time);

SetGlobalVariable("bar_high",bar_high);

SetGlobalVariable("barls_low",barls_low)。

如果cvend-swing_time>0,那么

SetGlobalVariable("swingend", (cvend-swing_time)+5);

如果cvend-(swing_time*2)>0,那么

SetGlobalVariable("swingend2",cvend-(swing_time*2)+5)。

如果cvend-(swing_time*3)>0,那么

SetGlobalVariable("swingend3",cvend-(swing_time*3)+5);

如果cvend-(swing_time*4)>0,那么

SetGlobalVariable("swingend4",cvend-(swing_time*4)+5);

如果cvend-(swing_time*5)>0,那么

SetGlobalVariable("swingend5",cvend-(swing_time*5)+5);

如果cvend-(swing_time*6)>0,那么

SetGlobalVariable("swingend6",cvend-(swing_time*6)+5);

如果cvend-(swing_time*7)>0,那么

SetGlobalVariable("swingend7",cvend-(swing_time*7)+5);

如果cvend-(swing_time*8)>0,那么

SetGlobalVariable("swingend8",cvend-(swing_time*8)+5);

如果cvend-(swing_time*9)>0,那么

SetGlobalVariable("swingend9",cvend-(swing_time*9)+5)。

}

结束。

结束。

结束。

结束。

附加的文件:
float.mq4  4 kb
 

你好。

我有MT4的浮动指标,但在EX4文件中只有Barry Stander网页上的内容

http://www.4africa.net/4meta/Indicators/

欢呼声

附加的文件:
float.ex4  21 kb
 

如何使用EX4文件? 浮动指标

你好,MFX。

谢谢你的帮助。但是,我不知道如何将EX4文件变成可用的.mq4文件?你知道吗?当我在MetaEditor内打开它时,我只得到一个信息 "请下载最新的文件"。 从哪里来的,它没有说。 如果我把你所附的文件变成一个.txt文件,并试图打开它,它只是胡言乱语。 有什么建议吗?

谢谢。

MJ

 

你好。

ex4文件在Meta Editor中打不开。复制到你的粘贴C:Progam Files\MetaTrader\Experts\Indicators,然后重新启动你的平台,如果你使用iCustom 模式,它也在运行。

欢呼声

 

伙计们,不要浪费你们的时间。最后一个浮动指标,如Barrys的浮动指标,在历史上是重新改变的,所以他们所显示的是不真实的。

在过去的一年里,我没有在任何论坛上看到任何工作版本的浮动指标(不是带MA`s的那个,而是带Fibs和Histograms的那个)。

 

谢谢你的源文件,巴里。

 

我试过mq4上的浮动指标,它确实有时会自己重绘。 浮动似乎相当可靠,但也有那么一小部分。 几个月前,我曾在一个演示中试过,似乎你确实可以用它来交易,但不是100%。 这里发布的浮动指标与我所使用的不同。

 
et_phonehome_2:
我试过mq4上的浮动指标,它确实有时会自己重绘。 浮动似乎相当可靠,但也有那么一小部分。 几个月前,我曾在一个演示版上试过,似乎你确实可以用它来交易,但不是100%。 这里发布的浮动指标与我所使用的不同。

你用的是哪种指标,请你公布一下好吗?