海,我需要幫助來完成我的EA。我試圖寫一些簡單的EA。主要思想是順應潮流。我們有一個目標和止損。當市場走向止損點時,我們可以在另一個方向上開闢新的位置。

問題是我不能阻止EA打開很多位置。我只需要1個位置。我不擅長英語......只要試試這個EA,請告訴我應該添加什麼。

謝謝。


//------------------------------------------------ --------
#define skode 353571

extern int profit = 30;
extern int ST = 50;
extern int SL = 75;

double Lots = 0.1;
double MaximumRisk = 0.02;
double DecreaseFactor = 3;
int res;

int hitorder(字符串符號)
{
int buys = 0,sells = 0;
//----
for(int i = 0; ilt; OrdersTotal(); i )
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)== false)break;
if(OrderSymbol()== Symbol()OrderMagicNumber()== skode)
{
if(OrderType()== OP_BUY)買 ;
if(OrderType()== OP_SELL)賣出 ;
}
}
if(buysgt; 0)返回(購買);
否則返回( - );
}

void buka()
{
雙重比例,趨勢,現在,take1,sar;

rata = iMA(NULL,0,100,6,MODE_SMA,PRICE_MEDIAN,0);
trend = iMA(NULL,0,12,5,MODE_SMA,PRICE_MEDIAN,0);

if(趨勢lt; rata)
OrderSend(符號(),OP_SELL,0.1%,投標,3,(向 (點* SL)),(Ask-(點*利潤)),, skode,0,紅色);
if(trend gt; rata)
OrderSend(符號(),OP_BUY,0.1%,向,3,(Bid-(點* SL)),(出價 (點*利潤)),, skode,0,藍色);

返回;

}

void tutup()
{
雙重比例,趨勢,現在,take1,sar;
int jual = 0;
int beli = 0;

trend = iMA(NULL,0,12,5,MODE_SMA,PRICE_MEDIAN,0);
rata = iMA(NULL,0,100,6,MODE_SMA,PRICE_MEDIAN,0);

for(int i = 0; ilt; OrdersTotal(); i )
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)== false)break;
if(OrderMagicNumber()!= skode || OrderSymbol()!= Symbol())繼續;

if(Volume [0] gt; 1)返回;

如果(訂單類型()== OP_BUY)
{
if((OrderOpenPrice() - Point * ST)lt; Bid)
OrderSend(符號(),OP_SELL,0.1%,投標,3,(向 (點* SL)),(Ask-(點*利潤)),, skode,0,紅色);
}

如果(訂單類型()== OP_SELL)//短
{
if((OrderOpenPrice() Point * ST)lt; Ask)
OrderSend(符號(),OP_BUY,0.1%,向,3,(Bid-(點* SL)),(出價 (點*利潤)),, skode,0,黃色);
}
}
}

// ----------------------------------------------- -------------------
//|專家啟動功能|
// ----------------------------------------------- -------------------
int start()
{
if(Barslt; 100 || IsTradeAllowed()== false)return;
if(hitorder(Symbol())== 0)buka();
別的tutup();
返回(0);
}
// ----------------------------------------------- -------------------