Ojala EA - sayfa 14

 
Mohammed:
selam

Bu sürümü birlikte test edebilir miyiz!

Ayarlar : Varsayılan

Çiftler : Herhangi

TF : H4

Not : MSN Style Pop Alert'ı kullanmak istiyorsanız lütfen Coders Guru Pop Alert'i indirin:

http://www.metatrader.info/node/82

Bu yeni bir sürüm mü yoksa ne?

 

Dışarı çık!

BrunoFX:
merhaba Muhammed,

Bunu yeni ama olmadan test etmek istiyorum: Coders Guru Pop Alert Plugin, ancak bir hatam var:

2;76;C:\Forex\StrategyBuilderFX 400\experts\Ojala.mq4;7:1;'Pop.mqh' - program dosyası açılamıyor

Merhaba Bruno,

Coder Guru Pop'u kullanmak istemiyorsanız, lütfen bu kodu kullanın:

//+------------------------------------------------------------------+

//| Ojala.mq4 |

//| Mohammed |

//| https://www.forex-tsd.com |

//+------------------------------------------------------------------+

#property copyright "Mohammed"

#property link "https://www.forex-tsd.com"

extern double TakeProfit=85;

extern double TrailingStop=10;

extern double StopLoss=35;

extern double Lots = 1; //0.01

extern int EmaPeriod = 6;

// Thanks going to Coders' Guru!

bool isNewSumbol(string current_symbol)

{

//loop through all the opened order and compare the symbols

int total = OrdersTotal();

for(int cnt = 0 ; cnt < total ; cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

string selected_symbol = OrderSymbol();

if (current_symbol == selected_symbol)

return (False);

}

return (True);

}

//+------------------------------------------------------------------+

//| expert start function |

//+------------------------------------------------------------------+

int start()

{

//----

int cnt, ticket, total;

if(Bars<100)

{

Print("bars less than 100");

return(0);

}

if(TakeProfit<5)

{

Print("TakeProfit less than 10");

return(0); // check TakeProfit

}

total = OrdersTotal();

if(total < 1 || isNewSumbol(Symbol()))

{

if(iCustom(NULL,0,"EMAOsMA",EmaPeriod,0,2)0)

{

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,"Ojala",12345,0,Green);

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

Print("BUY order opened : ",OrderOpenPrice());

}

}

else Print("Error opening BUY order : ",GetLastError());

return(0);

}

if(iCustom(NULL,0,"EMAOsMA",EmaPeriod,0,2)>0 && iCustom(NULL,0,"EMAOsMA",EmaPeriod,0,1)<0)

{

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+StopLoss*Point,Bid-TakeProfit*Point,"Ojala",12345,0,Red);

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

Print("SELL order opened : " , OrderOpenPrice());

}

}

else Print("Error opening SELL order : ",GetLastError());

return(0);

}

return(0);

}

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()<=OP_SELL && OrderSymbol()==Symbol())

{

if(OrderType()==OP_BUY) // long position is opened

{

if(iCustom(NULL,0,"EMAOsMA",EmaPeriod,0,1)>0 && iCustom(NULL,0,"EMAOsMA",EmaPeriod,0,0)<0)

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position

return(0); // exit

}

if(TrailingStop>0)

{

if(Bid-OrderOpenPrice()>Point*TrailingStop)

{

if(OrderStopLoss()<Bid-Point*TrailingStop)

{

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);

return(0);

}

}

}

}

else // go to short position

{

if(iCustom(NULL,0,"EMAOsMA",EmaPeriod,0,1)0)

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position

return(0); // exit

}

if(TrailingStop>0)

{

if((OrderOpenPrice()-Ask)>(Point*TrailingStop))

{

if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);

return(0);

}

}

}

}

}

}

return(0);

}

//+------------------------------------------------------------------+

 
JoZo:
Bu yeni bir sürüm mü yoksa ne?

Jozo,

Orijinal EA'da küçük bir değişiklik, umarım daha iyi çalışır!

 
Mohammed:
Merhaba Bruno, Coder Guru Pop'u kullanmak istemiyorsanız lütfen bu kodu kullanın:

merhaba muhammed,

Teşekkür

 
Mohammed:
Jozo, Orijinal EA'da küçük bir değişiklik, umarım daha iyi çalışır!

Değişiklikleri açıklayabilir misiniz?

teşekkürler

 
JoZo:
Değişiklikleri açıklayabilir misiniz? teşekkürler

Selam Jozo!

Bunlar modifikasyonlar:

1- Hareketli Ortalamanın periyodu artık 12 yerine 6'dır.

2- Şimdiki çubuk için değil, önceki iki çubuk için işlem açma hesaplaması (1 ve 2 0 çubuk değil).

3- StopLoss uygulandı!

4- Kapanış pozisyonları uygulandı!

2 günlük beyanımı ekledim! (Lütfen manuel 2 işlemi dikkate almayın).

 
Mohammed:
Selam Jozo!

Bunlar modifikasyonlar:

1- Hareketli Ortalamanın periyodu artık 12 yerine 6'dır.

2- Şimdiki çubuk için değil, önceki iki çubuk için işlem açma hesaplaması (1 ve 2 0 çubuk değil).

3- StopLoss uygulandı!

4- Kapanış pozisyonları uygulandı!

2 günlük beyanımı ekledim! (Lütfen manuel 2 işlemi dikkate almayın).

Gerçekten güzel bir açıklama!

Eski Ojala'yı iletmek için 9.3.2005'te başladım ve başlangıç bakiyesi 10k idi. Bugün 13.900 ve hisse senedi 12k USD/CHF'nin YUKARI ve EUR'nun düşmesini bekliyorum.

Yeni Ojala için hangi zaman dilimi?

 
JoZo:
Gerçekten güzel bir açıklama!

Eski Ojala'yı iletmek için 9.3.2005'te başladım ve başlangıç bakiyesi 10k idi. Bugün 13.900 ve hisse senedi 12k USD/CHF'nin YUKARI ve EUR'nun düşmesini bekliyorum.

Yeni Ojala için hangi zaman dilimi?

Teşekkürler Jozo!

Zaman Çerçevesi H4 olmalıdır

Sizin ifadenizi görebilir miyim?

 
Mohammed:
Teşekkürler Jozo!

Zaman Çerçevesi H4 olmalıdır

Sizin ifadenizi görebilir miyim?

Merhaba,

Bir çoklu para birimi için planlanmış mı? ve ne kadar?

 
BrunoFX:
Merhaba, Bir adet çoklu para birimi için planlanmış mı? ve ne kadar?

Merhaba,

Çoğu para birimiyle test ediyorum ve yeni EA ile daha iyi çalışan en iyi para birimlerini seçmedim (Ekteki çalışma alanına bakın!).

Artık geriye dönük testlere inanmıyorum, bu yüzden ileriye dönük test ediyorum.

Dosyalar:
screen.gif  53 kb