Zitat:
Zitat von Striker
Da ich gerade dabei bin und es für den ein oder anderen sicherlich innerhalb von Sekunden beschrieben ist würde ich gerne wissen wie ich meinen SL bei jedem neuen Tick auf einen aktuellen iMA setzen kann.
Vielen Dank für Eure Hilfe
|
PHP-Code:
//+------------------------------------------------------------------+
void TrailingByMA(int iTicket,int iTF,int iMAPeriod,int iMAShift,int MAMethod,int iApplPrice,int iShift)
{
double dMA;
dMA=iMA(Symbol(),iTF,iMAPeriod,iMAShift,MAMethod,iApplPrice,iShift);
if(OrderType()==OP_BUY)
{
if((OrderStopLoss()<dMA) && (dMA<Bid-MarketInfo(Symbol(),MODE_STOPLEVEL)*Point))
{
if(!OrderModify(iTicket,OrderOpenPrice(),dMA,OrderTakeProfit(),OrderExpiration()))
Print("OrderTicket",OrderTicket(),". Error: ",GetLastError());
}
}
if(OrderType()==OP_SELL)
{
if(((OrderStopLoss()==0) || (OrderStopLoss()>dMA+(MarketInfo(Symbol(),MODE_SPREAD))*Point)) && (dMA+(MarketInfo(Symbol(),MODE_SPREAD))*Point>Ask+MarketInfo(Symbol(),MODE_STOPLEVEL)*Point))
{
if(!OrderModify(iTicket,OrderOpenPrice(),dMA+(MarketInfo(Symbol(),MODE_SPREAD))*Point,OrderTakeProfit(),OrderExpiration()))
Print("OrderTicket",OrderTicket(),". ERROR: ",GetLastError());
}
}
}
//+------------------------------------------------------------------+