:) Şimdi hata 130 ortaya çıktı. En anlaşılmaz olan şey, yanlış duraklarla (130), yine de doğru vuruşları (ATR tarafından hesaplanan) yapıyor ve duraklarım başlangıçta ayarlanmadı… Bu bir şekilde anlaşılabilir mi?
Ertelenen sihirbaz ve istenen esaret parametresi olarak yönteme geçersiniz.
İşlevinizin neden 1 hatası verdiğini anlayamıyorum (komik: hata 1 = hata yok, ancak sonuç bilinmiyor) ve takip etmiyor. Bazen bazı ileti dizileri gecikme yakalayabilir, ancak çoğunlukla >>>ERROR1 günlüğünde ve sağlıklı olun, öksürmeyin...
şöyle sesleniyorum:
//==============================================================================================// Модификация ордеров//============================================================================================== int criterion = TakeProfitATR ( 1 ); // Рассчитываем "достаточную" волатильность
if (criterion>= 15 ) trailingOrder( 511 , 20 ); // и если она в "норме" - тралим ордера...
//==============================================================================================// Функция для рассчёта Take Profit по ATR//+------------------------------------------------------------------+//| Take from ATR |//+------------------------------------------------------------------+double TakeProfitATR ( int tf)
{
double atr = iATR ( NULL ,tf, 14 , 0 );
double mltp = 15000 ;
if (tf== 1 ) mltp= 15000 ;
if (tf== 5 ) mltp= 45000 ;
double tp = MathRound (atr*mltp);
return (tp);
}
İşlevinizin neden 1 hatası verdiğini anlayamıyorum (komik: hata 1 = hata yok, ancak sonuç bilinmiyor) ve takip etmiyor. Bazen bazı ileti dizileri gecikme yakalayabilir, ancak çoğunlukla >>>ERROR1 günlüğünde ve sağlıklı olun, öksürmeyin...
şöyle sesleniyorum:
Bundan dolayı Hata 1 görünebilir (dokümandan OrderModify() ile ilgili):
Değişmeyen değerler fonksiyon parametreleri olarak iletilirse, bu durumda hata 1 (ERR_NO_RESULT) üretilecektir.
Yani sorun değil, bu normal, gerçekten bir hata yok, görmezden gelebilirsiniz.
İşlevinizin neden 1 hatası verdiğini anlayamıyorum (komik: hata 1 = hata yok, ancak sonuç bilinmiyor) ve takip etmiyor. Bazen bazı ileti dizileri gecikme yakalayabilir, ancak çoğunlukla >>>ERROR1 günlüğünde ve sağlıklı olun, öksürmeyin...
şöyle sesleniyorum:
Limit emirleri eklendi (önceki kodda unutmuşum :))) + hata işleme #1 (değişiklikten önce, yeni fiyat mevcut fiyatla karşılaştırılır, eğer aynılarsa hiçbir şey yapmayın):
//+------------------------------------------------------------------+void trailingOrder( int magic, int trailing){
int index = 0 ;
while (trailing > 0 && OrdersTotal () != 0 && OrderSelect (index, SELECT_BY_POS)){
if (OrderMagicNumber() == magic){
if (OrderType() == OP_BUYSTOP){
if (OrderOpenPrice() - Ask > Point *trailing){
if ((Ask+ Point *trailing) - Ask >= MarketInfo( Symbol (), MODE_STOPLEVEL)* Point &&
(Ask+ Point *trailing) - Ask > MarketInfo( Symbol (), MODE_FREEZELEVEL)* Point &&
(Ask+ Point *trailing) != OrderOpenPrice()){
if (!OrderModify(OrderTicket(),Ask+ Point *trailing,OrderStopLoss(),OrderTakeProfit(), 0 )) Print ( ">>> ERROR " , GetLastError ());
} else {
Print ( ">>> Слишком близко к рынку или передано неизмененное значение!" );
}
}
return ;
}
if (OrderType() == OP_SELLSTOP){
if (Bid - OrderOpenPrice() > Point *trailing){
if (Bid - (Bid- Point *trailing) >= MarketInfo( Symbol (), MODE_STOPLEVEL)* Point &&
Bid - (Bid- Point *trailing) > MarketInfo( Symbol (), MODE_FREEZELEVEL)* Point &&
(Bid- Point *trailing) != OrderOpenPrice()){
if (!OrderModify(OrderTicket(),Bid- Point *trailing,OrderStopLoss(),OrderTakeProfit(), 0 )) Print ( ">>> ERROR " , GetLastError ());
} else {
Print ( ">>> Слишком близко к рынку или передано неизмененное значение!" );
}
}
return ;
}
if (OrderType() == OP_SELLLIMIT){
if (OrderOpenPrice() - Bid > Point *trailing){
if ((Bid+ Point *trailing) - Bid >= MarketInfo( Symbol (), MODE_STOPLEVEL)* Point &&
(Bid+ Point *trailing) - Bid > MarketInfo( Symbol (), MODE_FREEZELEVEL)* Point &&
(Bid+ Point *trailing) != OrderOpenPrice()){
if (!OrderModify(OrderTicket(),Bid+ Point *trailing,OrderStopLoss(),OrderTakeProfit(), 0 )) Print ( ">>> ERROR " , GetLastError ());
} else {
Print ( ">>> Слишком близко к рынку или передано неизмененное значение!" );
}
}
return ;
}
if (OrderType() == OP_BUYLIMIT){
if (Ask - OrderOpenPrice() > Point *trailing){
if (Ask - (Ask- Point *trailing) >= MarketInfo( Symbol (), MODE_STOPLEVEL)* Point &&
Ask - (Ask- Point *trailing) > MarketInfo( Symbol (), MODE_FREEZELEVEL)* Point &&
(Ask- Point *trailing) != OrderOpenPrice()){
if (!OrderModify(OrderTicket(),Ask- Point *trailing,OrderStopLoss(),OrderTakeProfit(), 0 )) Print ( ">>> ERROR " , GetLastError ());
} else {
Print ( ">>> Слишком близко к рынку или передано неизмененное значение!" );
}
}
return ;
}
}
index++;
}
}
//+------------------------------------------------------------------+
Evet.
Bu bir şekilde anlaşılabilir mi?
Yardıma ihtiyacım var!!! Geçmişten son kaybeden sipariş nasıl seçilir???
Senin için çok karışık :)
Ertelenen sihirbaz ve istenen esaret parametresi olarak yönteme geçersiniz.İşte kodum
İşlevinizin neden 1 hatası verdiğini anlayamıyorum (komik: hata 1 = hata yok, ancak sonuç bilinmiyor) ve takip etmiyor. Bazen bazı ileti dizileri gecikme yakalayabilir, ancak çoğunlukla >>>ERROR1 günlüğünde ve sağlıklı olun, öksürmeyin...
şöyle sesleniyorum:
İşlevinizin neden 1 hatası verdiğini anlayamıyorum (komik: hata 1 = hata yok, ancak sonuç bilinmiyor) ve takip etmiyor. Bazen bazı ileti dizileri gecikme yakalayabilir, ancak çoğunlukla >>>ERROR1 günlüğünde ve sağlıklı olun, öksürmeyin...
şöyle sesleniyorum:
Bundan dolayı Hata 1 görünebilir (dokümandan OrderModify() ile ilgili):
Değişmeyen değerler fonksiyon parametreleri olarak iletilirse, bu durumda hata 1 (ERR_NO_RESULT) üretilecektir.
İşlevinizin neden 1 hatası verdiğini anlayamıyorum (komik: hata 1 = hata yok, ancak sonuç bilinmiyor) ve takip etmiyor. Bazen bazı ileti dizileri gecikme yakalayabilir, ancak çoğunlukla >>>ERROR1 günlüğünde ve sağlıklı olun, öksürmeyin...
şöyle sesleniyorum:
Limit emirleri eklendi (önceki kodda unutmuşum :))) + hata işleme #1 (değişiklikten önce, yeni fiyat mevcut fiyatla karşılaştırılır, eğer aynılarsa hiçbir şey yapmayın):
Bu arada, Eğitimde bekleyen kullanıcılar için StopLevel ve FreezeLevel mesafeleri hakkında bir hata buldum:
Minimum mesafe StopLevel ile ilgili kısıtlama.
Belirtilen gereksinimlerden herhangi birinin ihlal edilmesi durumunda alım satım işlemi yapılmaz.
SellLimit, mevcut fiyatın üzerinde ayarlanır, bu nedenle şu şekilde doğrudur:
OpenPrice - Teklif ≥ StopLevel
Ekranın altındaki sekmelerdeki araçları sıralamanın bir yolu var mı? aksi takdirde 4 zaman diliminde 8 enstrüman düzensizlik içinde dağılır....
Ekranın altındaki sekmelerdeki araçları sıralamanın bir yolu var mı? aksi takdirde 4 zaman diliminde 8 enstrüman düzensizlik içinde dağılır....
grafiğin adını içeren sekmeye tıklayın ve istediğiniz konuma sürükleyin