Bana bu durumu anlatın: TMA_Fair'e istinaden planlandığı gibi sınırda açıyorum, karşı sınırda kapatıyorum ama diğer sınırda kapanmıyor! Koddaki hata nerede?
voidOnTick ()
{
PriceHigh = iCustom ( NULL , 0 , "ExtremeTMALine st2050 v1" , TimeFrame, TMAPeriod, Price, ATRMultiplier, ATRPeriod, TrendThreshold, ShowCenterLine, alertsOn, alertsMessage, alertsSound, alertsEmail, MaxBars, ShowInfo, ShowInfo_WindowNo, ShowInfo_X, ShowInfo_Y, ShowInfo_ColorLabel, ShowInfo_ColorSwing, ShowInfo_ColorUp, ShowInfo_ColorDown, 1 , 0 );
PriceLow = iCustom ( NULL , 0 , "ExtremeTMALine st2050 v1" , TimeFrame, TMAPeriod, Price, ATRMultiplier, ATRPeriod, TrendThreshold, ShowCenterLine, alertsOn, alertsMessage, alertsSound, alertsEmail, MaxBars, ShowInfo, ShowInfo_WindowNo, ShowInfo_X, ShowInfo_Y, ShowInfo_ColorLabel, ShowInfo_ColorSwing, ShowInfo_ColorUp, ShowInfo_ColorDown, 2 , 0 );
//+------------------------------------------------------------------+//+------------------------------------------------------------------+//+------------------------------------------------------------------+ if (CountSell() == 0 && Bid >= PriceHigh)
{
ticket = OrderSend ( Symbol (), OP_SELL , Lots, Bid , Slippage, 0 , 0 , "ExtremeTMALine_Robot" , Magic, 0 , Red);
if (ticket> 0 )
{
SL = NormalizeDouble ( Bid + StopLoss* Point , Digits );
if ( OrderSelect (ticket, SELECT_BY_TICKET ))
if (! OrderModify (ticket, OrderOpenPrice (), SL, 0 , 0 ))
Print ( "Ошибка модификации ордера на продажу!!!" );
} elsePrint ( "Ошибка открытия ордера на продажу!!!" );
}
//+------------------------------------------------------------------+ if ( Ask <= PriceLow && CountSell() > 0 )
{
for ( int i = OrdersTotal ()- 1 ; i >= 0 ; i--)
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ))
{
if ( OrderMagicNumber () == Magic && OrderType () == OP_SELL )
if (! OrderClose ( OrderTicket (), OrderLots (), Ask , Slippage, Black))
Print ( "Ошибка закрытия ордера на продажу!!!" );
} elsePrint ( "Ошибка открытия ордера на продажу!!!" );
}
}
//+------------------------------------------------------------------+//+------------------------------------------------------------------+//+------------------------------------------------------------------+ if (CountBuy() == 0 && Ask <= PriceLow)
{
ticket = OrderSend ( Symbol (), OP_BUY , Lots, Ask , Slippage, 0 , 0 , "ExtremeTMALine_Robot" , Magic, 0 , Blue);
if (ticket> 0 )
{
SL = NormalizeDouble ( Ask - StopLoss* Point , Digits );
if ( OrderSelect (ticket, SELECT_BY_TICKET ))
if (! OrderModify (ticket, OrderOpenPrice (), SL, 0 , 0 ))
Print ( "Ошибка модификации ордера на покупку!!!" );
} elsePrint ( "Ошибка открытия ордера на покупку!!!" );
}
//+------------------------------------------------------------------+ if ( Bid >= PriceHigh && CountBuy() > 0 )
{
for ( int i = OrdersTotal ()- 1 ; i >= 0 ; i--)
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ))
{
if ( OrderMagicNumber () == Magic && OrderType () == OP_BUY )
if (! OrderClose ( OrderTicket (), OrderLots (), Bid , Slippage, Green))
Print ( "Ошибка закрытия ордера на покупку!!!" );
} elsePrint ( "Ошибка открытия ордера на покупку!!!" );
}
}
}
//+------------------------------------------------------------------+//+------------------------------------------------------------------+//+------------------------------------------------------------------+int CountSell()
{
int count = 0 ;
for ( int trade = OrdersTotal ()- 1 ; trade>= 0 ; trade--)
{
if ( OrderSelect (trade, SELECT_BY_POS , MODE_TRADES ))
{
if ( OrderSymbol () == Symbol () && OrderMagicNumber () == Magic && OrderType () == OP_SELL )
count++;
}
}
return (count);
}
//+------------------------------------------------------------------+int CountBuy()
{
int count = 0 ;
for ( int trade = OrdersTotal ()- 1 ; trade>= 0 ; trade--)
{
if ( OrderSelect (trade, SELECT_BY_POS , MODE_TRADES ))
{
if ( OrderSymbol () == Symbol () && OrderMagicNumber () == Magic && OrderType () == OP_BUY )
count++;
}
}
return (count);
}
//+------------------------------------------------------------------+
Bana bu durumu anlatın: TMA_Fair'e istinaden planlandığı gibi sınırda açıyorum, karşı sınırda kapatıyorum ama diğer sınırda kapanmıyor! Koddaki hata nerede?
Göstergeyi dikkatlice takip ederseniz, 10 veya daha fazla çubuğu yeniden çizdiğini fark edeceksiniz. Bütün sebep bu.
Tünaydın! Bana yardım et lütfen! Lot sayısı için bir kontrol yazmaya çalışıyorum. Hesabım +%10 kar olursa, lot ikiye katlanır. +%20 ise, lot*4. Ve hesap azalırsa, lot büyüklüğü buna göre azalır. Her yeni işlem için Lots_New'in nasıl yeni bir değer almasını anlamıyorum.
gördüm ve denedim. Zaten çok yardımcı oldu, ancak anlayışımın bir sınırı var
Yani sipariş sayısına değil, lot cinsinden hacme mi ihtiyacınız var?
Yanisipariş sayısına değil, lot cinsinden hacme mi ihtiyacınız var?
Siktir git!!!!!! Neye ihtiyacım vardı!!!!!! Bunu daha önce hiç düşünmemiştim!!!!! Çok teşekkürler!!!!!
Evet, endişelerinde gözden kaçmış
Ancak merhaba!
Bana bu durumu anlatın: TMA_Fair'e istinaden planlandığı gibi sınırda açıyorum, karşı sınırda kapatıyorum ama diğer sınırda kapanmıyor! Koddaki hata nerede?
Ancak merhaba!
Bana bu durumu anlatın: TMA_Fair'e istinaden planlandığı gibi sınırda açıyorum, karşı sınırda kapatıyorum ama diğer sınırda kapanmıyor! Koddaki hata nerede?
Göstergeyi dikkatlice takip ederseniz, 10 veya daha fazla çubuğu yeniden çizdiğini fark edeceksiniz. Bütün sebep bu.
Göstergeyi dikkatlice takip ederseniz, 10 veya daha fazla çubuğu yeniden çizdiğini fark edeceksiniz. Bütün sebep bu.
Tünaydın! Bana yardım et lütfen! Lot sayısı için bir kontrol yazmaya çalışıyorum. Hesabım +%10 kar olursa, lot ikiye katlanır. +%20 ise, lot*4. Ve hesap azalırsa, lot büyüklüğü buna göre azalır. Her yeni işlem için Lots_New'in nasıl yeni bir değer almasını anlamıyorum.