Помогите декодировать советника в MQL4

 
Буду очень признателен тому кто сможет переделать этот советник в MQL4


/*[[
Name := Казахский Удав
Author := исходный индикатор ZigZag из Казахстана
идеи по доработке и использованию от nemo-X
небольшое программирование и отладка от eugene5
Link :=
Notes :=
Lots := 0.1
Stop Loss := 100
Take Profit := 100
Trailing Stop := 0
]]*/

Defines: barn(100),Length(6);
Defines: slippage(10);
Variables : shift(0),lasthigh(-1),lastlow(-1),lasthighpos(0),lastlowpos(0),currentvalue(0), lastvalue(0);
Variables : val(0),back(0),res(0),flag(0);
Variables : curlow(0),curhigh(0),currentshift(0),lastshift(0);
Variable: Trend(0), lastposition("");
Variable : LL(0),HH(0),Swing(0),Swing_n(0),BH(0),BL(0),i(0),zu(0),zd(0),NH(0),NL(0), uzl(0);
Array: Uzel[10000,2](0);
SetLoopCount(0);
// loop from first bar to current bar (with shift=0)
Swing_n=0;Swing=0;uzl=0;
BH =High[barn];BL=Low[barn];zu=barn;zd=barn;

For shift= barn downto 0 Begin
LL=10000000;HH=-100000000;
for i=shift+Length downto shift+1 Begin
if Low[i]< LL then {LL=Low[i];};
if High[i]>HH then {HH=High[i];};
end;


if Low[shift]<LL and High[shift]>HH then
{
Swing=2;
if Swing_n=1 then {zu=shift+1;};
if Swing_n=-1 then {zd=shift+1;};

}
else
{
if Low[shift]<LL then {Swing=-1;};
if High[shift]>HH then {Swing=1;};
};

if Swing <> Swing_n and Swing_n<>0 then
{
if Swing=2 then {swing=-Swing_n;BH = High[shift];BL = Low[shift]; };
uzl=uzl+1;
if swing = 1 then {Uzel[uzl,1]=zd;Uzel[uzl,2]=BL;};
if swing =- 1 then {Uzel[uzl,1]=zu;Uzel[uzl,2]=BH; };
BH = High[shift];BL = Low[shift];
};

if swing = 1 then { if High[shift] >= BH then {BH=High[shift];zu=shift;};};
if swing = -1 then { if Low[shift]<=BL then {BL=Low[shift]; zd=shift;};};
Swing_n=Swing;

end;
for i =1 to uzl Begin
SetIndexValue(Uzel[i,1],Uzel[i,2]);
end ;

// ниже торгующий довесок от eugene5

If FreeMargin<1000 then Exit; // денег нет - выходим

flag=0;
for i=1 to TotalTrades
{
if Symbol=Ord(i,VAL_SYMBOL) then
flag=i;
};

trend=Uzel[uzl,2]-Uzel[uzl-1,2];

if trend<0 then
{
comment("Разница зигзаза=",trend, " хочется купить :)", " lastposition=", lastposition);
}
else
if trend>0 then
{
comment("Разница зигзаза=",trend, " хочется продать :)", " lastposition=", lastposition);
}
else
comment("Разница зигзаза=",trend, " стоим на месте :(", " lastposition=", lastposition);

//If CurTime > LastTradeTime + 10 Then //стандартная проверка по времени
{
if trend<0 then
{
if flag<>0 and ord(flag,VAL_TYPE)=OP_SELL then
{
Comment("close order");
CloseOrder(ord(flag,VAL_TICKET),ord(flag,VAL_LOTS),bid,slippage,red);
lastposition="sell";
exit;
}
else
if flag=0 and (lastposition="sell" or lastposition="") then
{
Comment("buy");
SetOrder(OP_BUY,lots,ask,Slippage,ask-StopLoss*point,ask+TakeProfit*Point,RED);
exit;
};
};

if trend>0 then
{
if flag<>0 and ord(flag,VAL_TYPE)=OP_BUY then
{
Comment("close order");
CloseOrder(ord(flag,VAL_TICKET),ord(flag,VAL_LOTS),ask,slippage,red);
lastposition="buy";
exit;
}
else
if flag=0 and (lastposition="buy" or lastposition="") then
{
Comment("sell");
SetOrder(OP_SELL,lots,bid,Slippage,bid+StopLoss*point,bid-TakeProfit*Point,RED);
exit;
};
};
};
 
Код, не разбирал.
Просто возник вопрос - в чём прблемма?
 
Проблема в том что не знаю Mql4, и самостоятельно не получается переписать его (
 
Hamas:
Проблема в том что не знаю Mql4, и самостоятельно не получается переписать его (
Я наверно не так задал вопрос :(

Перед собой я вижу код, с беглого разгляда написанный именно на mql4.
А теперь вопрос?
1.Он работает?
2. Он написан на основе С, С++,С# и почему-то не работает?
3.Я не знаю на чём он написан, но он не работает :(.
4. Он работает, но я не пойму как?
...............
Список можно продолжить.

Варианті ответа.
1. А что ещё надо?
2.какая функция/операция не выполняеться?
3. Что хотелось бы получить? (я понимаю что хоцца получить профит +100, причём постоянно, а конкретно идеи?)
4. Какой алгоритм непонятен?

p.s. Я с удовольствием разберусь с кодом (поскольку сам учусь) но мне нужно знать замысел чтоб понять почему невыходит.....
 
Перед собой я вижу код, с беглого разгляда написанный именно на mql4.
поправочка - на MQL II ;)
 
Знаем ми такой мащин - здэс пасматри - http://forum.viac.ru/viewtopic.php?t=2141
 
Rosh:
Знаем ми такой мащин - здэс пасматри -
http://forum.viac.ru/viewtopic.php?t=2141
Спасибо, я оттуда его и взял, дело в том что он мне нужен на Mql4 а там только на Mql2
 
Hell:
Hamas:
Проблема в том что не знаю Mql4, и самостоятельно не получается переписать его (
Я наверно не так задал вопрос :(

Перед собой я вижу код, с беглого разгляда написанный именно на mql4.
А теперь вопрос?
1.Он работает?
2. Он написан на основе С, С++,С# и почему-то не работает?
3.Я не знаю на чём он написан, но он не работает :(.
4. Он работает, но я не пойму как?
...............
Список можно продолжить.

Варианті ответа.
1. А что ещё надо?
2.какая функция/операция не выполняеться?
3. Что хотелось бы получить? (я понимаю что хоцца получить профит +100, причём постоянно, а конкретно идеи?)
4. Какой алгоритм непонятен?

p.s. Я с удовольствием разберусь с кодом (поскольку сам учусь) но мне нужно знать замысел чтоб понять почему невыходит.....
Всё намного проще как уже сказал komposter он написан на языке Mql2 а мне же он нужен На Mql4.... вот )))
 
Спасибо тебе mandor :)
 
точно не знаю, только предоложить могу , что написали его парни из казахстана ))