Поплавок

 

Очень интересный индикатор. См. прилагаемое изображение.

Красный цвет - афлат. Похоже, что мы не торгуем во время афлата.

Файлы:
floatma.mql  1 kb
float_mt3.jpg  83 kb
 

Другие плавающие индикаторы.

Файлы:
 

Индикатор поплавка.

Файлы:
float.jpg  98 kb
float.mql  9 kb
 

Переписать поплавковый индикатор в .mq4?

Здравствуйте, New Digital,

Кто-нибудь переписал индикатор Float в скрипт .mq4 для MT4? Я вижу, что здесь есть версия .mql. На форуме SB есть обсуждение этого индикатора, плюс был написан эксперт, но индикатор (написанный Барри Стендером) работает с ошибками, и никто не может найти исходный код. Я нашел следующий скрипт от 'Bigblock', размещенный на сайте Gordago. Я не уверен, что это за скрипт, но, возможно, логика понятна какой-нибудь амбициозной душе, которая захочет заставить его работать как файл .mq4? Возможно, это то же самое, что и "Поплавок" Барри С., хотя он длиннее (я не кодер).

Из индикаторов Float, размещенных выше, я предпочитаю тот, который создает рампу из синих линий гистограммы. Я также приложил файл Float с ошибками с форума SB.

-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),bars_high(0),bars_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);

кумулятивныйV=0;

cumulativeV2=0;

SetLoopCount(0);

If Bars 1 Then

first = True

first1 = True;

prevbars = Bars;

FLOATV=0;

If first Then Begin

loopbegin1 = Bars-float-1;

loopbegin2 = Bars-float-1;

first = False;

loopbegin1 = loopbegin1+1;

For shift = loopbegin1 Downto 0 Begin

//найти максимум и минимум

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);

//найти разницу цен свинга

swing = H-

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

//найти плавающий временной барсчет

swing_time = abs(bars_low-bars_high);

//найти кумулятивный объем для плавающего периода

IF bars_high < bars_low then

{

cvstart=bars_low;

cvend=bars_high;

}

else

{

cvstart=bars_high;

cvend=bars_low;

}

If first1 and FLOATV=0 Then Begin

for shift = cvstart downto cvend Begin {

FLOATV=FLOATV+V[shift];

first1 = False;}

end;

//найти кумулятивный объем с момента последнего оборота

for shift = cvstart downto 0 Begin

cumulativeV=cumulativeV+V[shift];

if cumulativeV>=FLOATV then{

cumulativeV=0;

}

SetIndexValue(shift,cumulativeV*0.001);//Blue

SetIndexValue2(shift,FLOATV*0.001);//красный

комментарий(

"\n", "High был ",bars_high, "баров назад",

"\n", "Low was ",bars_low, "bars ago","\n",

"\n", "Float time было = ", swing_time," баров",

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

"\n", "Плавающий объем = ",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,зеленый);

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);

}

//вернуть. линии плавающих значений. они рисуют линии, которые вычисляют плавающие значения.

//если вы измените "trendline" на "Vline", это будет рисовать и через осцилляторы. может быть забавно.

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);

//преобразование плавающих прогнозов. Они основаны только на времени.

//смотрите синюю гистограмму для реальных значений float.

//если вы измените "trendline" на "Vline", он будет рисовать и через осцилляторы. может быть забавно

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,0);

if cvend-(swing_time*2)>0 then {

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,0,0);

if cvend-(swing_time*3)>0 then {

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,0);

if cvend-(swing_time*4)>0 then {

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,0);

if cvend-(swing_time*5)>0 then {

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,0,0);

if cvend-(swing_time*6)>0 then {

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,0,0);

if cvend-(swing_time*7)>0 then {

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,0);

if cvend-(swing_time*8)>0 then {

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,0,0);

if cvend-(swing_time*9)>0 then {

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,0,0);

//закомментируйте все, что вы не используете, это поможет в скорости.

If Backtesting = 1 then {

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("bars_high",bars_high);

SetGlobalVariable("bars_low",bars_low);

if cvend-swing_time>0 then

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

if cvend-(swing_time*2)>0 then

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);

}

end;

end;

end;

end;

Файлы:
float.mq4  4 kb
 

Здравствуйте,

У меня есть индикатор float для MT4, но в файле EX4 только из веб-страницы Barry Stander

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

Спасибо

Файлы:
float.ex4  21 kb
 

Как использовать файл EX4? Поплавковый индикатор

Здравствуйте MFX,

Спасибо за помощь. Однако я не знаю, как превратить файл EX4 в пригодный для использования файл .mq4? Вы знаете? Когда я открываю его из MetaEditor, я просто получаю сообщение "Please download newest file." Откуда - не сказано. Если я превращу файл, который вы прикрепили, в .txt и попытаюсь открыть его, это будет просто тарабарщина. Предложения?

Спасибо,

MJ

 

Привет,

Файл ex4 не открывается в Meta Editor. Скопируйте его в пасту C:Progam Files\MetaTrader\Experts\Indicators и перезапустите вашу платформу, если вы используете режим iCustom, он тоже работает.

Спасибо

 

Ребята, не тратьте свое время. Последний float, как и Barrys float для MT4, переделывают себя в истории, поэтому то, что они показывают, не соответствует действительности.

Я не видел ни одной рабочей версии индикатора float (не той, что с MA`s, а той, что с Fibs и Histograms) ни на одном форуме за последний год.

 

Спасибо за исходный файл Барри.

 

Я пробовал индикатор float на mq4, правда, он иногда перерисовывает себя. Поплавок кажется довольно надежным, но есть небольшой процент. Я пробовал его на демо много месяцев назад, кажется, что вы можете торговать по нему, но не на 100%. Индикатор флоата, размещенный здесь, отличается от того, который я использовал.

 
et_phonehome_2:
Я пробовал индикатор float на mq4, это правда, что он иногда перерисовывает себя. Флоат кажется довольно надежным, но есть небольшой процент. Я пробовал его на демо много месяцев назад, кажется, что вы можете торговать по нему, но не на 100%. Индикатор флоата, размещенный здесь, отличается от того, который я использовал.

Какой индикатор вы используете, опубликуйте, пожалуйста?