Hatalar, hatalar, sorular - sayfa 1806
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Bir MQL programını bir çizelgeye yüklerken böyle bir hata oluşursa ne yapmalıyım?
Servis Masası: #1673705
Bir sembolün tüm göstergelerinin bir akışta birbiri ardına sırayla sayıldığını unutmayın. Bazı göstergeler yavaşlarsa, tüm sembol işleme akışı yavaşlar.
Metaquotes-Demo'da limit emirlerinde negatif kayma olabilir - doğru değil.
BuyLimit'i Sor'un üzerinde manuel olarak ayarlayın...
[Fiyat yok] birdenbire hata
Nasıl oluyor da fiyat yok, kütükte bile belirtilmiş mi?!
Rica etmek
2017.02 . 14 23 : 18 : 41.442 Request.magic = 0
2017.02 . 14 23 : 18 : 41.442 Request.order = 0
2017.02 . 14 23 : 18 : 41.442 Request.symbol = EURPLN
2017.02 . 14 23 : 18 : 41.442 Request.volume = 1.0
2017.02 . 14 23 : 18 : 41.442 Request.price = 4.30632
2017.02 . 14 23 : 18 : 41.442 Request.stoplimit = 0.0
2017.02 . 14 23 : 18 : 41.442 Request.sl = 0.0
2017.02 . 14 23 : 18 : 41.442 Request.tp = 0.0
2017.02 . 14 23 : 18 : 41.442 Request.deviation = 100
2017.02 . 14 23 : 18 : 41.442 Request.type = ORDER_TYPE_BUY ( 0 )
2017.02 . 14 23 : 18 : 41.442 Request.type_filling = ORDER_FILLING_RETURN ( 2 )
2017.02 . 14 23 : 18 : 41.442 Request.type_time = ORDER_TIME_GTC ( 0 )
2017.02 . 14 23 : 18 : 41.442 Request.expiration = 1970.01 . 01 00 : 00 : 00
2017.02 . 14 23 : 18 : 41.442 Request.comment = My Position
2017.02 . 14 23 : 18 : 41.442 Request.position = 0
2017.02 . 14 23 : 18 : 41.442 Request.position_by = 0
2017.02 . 14 23 : 18 : 41.442 Result.retcode = 10021
2017.02 . 14 23 : 18 : 41.442 Result.deal = 0
2017.02 . 14 23 : 18 : 41.442 Result.order = 0
2017.02 . 14 23 : 18 : 41.442 Result.volume = 0.0
2017.02 . 14 23 : 18 : 41.442 Result.price = 0.0
2017.02 . 14 23 : 18 : 41.442 Result.bid = 0.0
2017.02 . 14 23 : 18 : 41.442 Result.ask = 0.0
2017.02 . 14 23 : 18 : 41.442 Result.comment = No prices 0.028 + 0.000 ms
2017.02 . 14 23 : 18 : 41.442 Result.request_id = 0
2017.02 . 14 23 : 18 : 41.442 Result.retcode_external = 0
2017.02 . 14 23 : 18 : 41.442
2017.02 . 14 23 : 18 : 41.442 SymbolInfoDouble (Symb,:: SYMBOL_BID ) = 4.30151
2017.02 . 14 23 : 18 : 41.442 SymbolInfoDouble (Symb,:: SYMBOL_ASK ) = 4.30632
Metaquots sunucusunda da aynı hatayla karşılaştım. ve 5 denemeden sonra sipariş hala verildi
Metaquotes-Demo'da limit emirlerinde negatif kayma olabilir - doğru değil.
BuyLimit'i Sor'un üzerinde manuel olarak ayarlayın...
#define TOSTRING2(A) #A + " = " + EnumToString (A) + " (" + ( string )(A) + ")\n"
string ToString( const MqlTradeRequest &Request )
{
return (TOSTRING2(Request.action) + TOSTRING(Request.magic) + TOSTRING(Request.order) +
TOSTRING(Request.symbol) + TOSTRING(Request.volume) + TOSTRING(Request.price) +
TOSTRING(Request.stoplimit) + TOSTRING(Request.sl) + TOSTRING(Request.tp) +
TOSTRING(Request.deviation) + TOSTRING2(Request.type) + TOSTRING2(Request.type_filling) +
TOSTRING2(Request.type_time) + TOSTRING(Request.expiration) + TOSTRING(Request.comment) +
TOSTRING(Request.position) + TOSTRING(Request.position_by));
}
string ToString( const MqlTradeResult &Result )
{
return (TOSTRING(Result.retcode) + TOSTRING(Result.deal) + TOSTRING(Result.order) +
TOSTRING(Result.volume) + TOSTRING(Result.price) + TOSTRING(Result.bid) +
TOSTRING(Result.ask) + TOSTRING(Result.comment) + TOSTRING(Result.request_id) +
TOSTRING(Result.retcode_external));
}
#define Bid (:: SymbolInfoDouble (Symb, :: SYMBOL_BID ))
#define Ask (:: SymbolInfoDouble (Symb, :: SYMBOL_ASK ))
#include <MT4Orders.mqh>
#define PRINT(A) A; \
Print ( #A + "\n" + ToString(MT4ORDERS::LastTradeRequest) + ToString(MT4ORDERS::LastTradeResult)); \
Print (TOSTRING( Bid )); \
Print (TOSTRING( Ask )); \
Print (TOSTRING( SymbolInfoDouble (Symb, SYMBOL_SESSION_PRICE_LIMIT_MIN )));
void OpenBuyLimits( const string Symb )
{
PRINT( OrderSend (Symb, OP_BUYLIMIT , 1 , SymbolInfoDouble (Symb, SYMBOL_SESSION_PRICE_LIMIT_MIN ), 100 , 0 , 0 ) )
PRINT( OrderSend (Symb, OP_BUYLIMIT , 1 , Ask , 100 , 0 , 0 ) )
}
void OnStart ()
{
OpenBuyLimits( "DIG-20170330" );
}
Alınan /verilen bu tür verileri sipariş gönder
2017.02 . 15 14 : 47 : 19.295 Request.action = TRADE_ACTION_PENDING ( 5 )
2017.02 . 15 14 : 47 : 19.295 Request.magic = 0
2017.02 . 15 14 : 47 : 19.295 Request.order = 0
2017.02 . 15 14 : 47 : 19.295 Request.symbol = DIG- 20170330
2017.02 . 15 14 : 47 : 19.295 Request.volume = 1.0
2017.02 . 15 14 : 47 : 19.295 Request.price = 29528.0
2017.02 . 15 14 : 47 : 19.295 Request.stoplimit = 0.0
2017.02 . 15 14 : 47 : 19.295 Request.sl = 0.0
2017.02 . 15 14 : 47 : 19.295 Request.tp = 0.0
2017.02 . 15 14 : 47 : 19.295 Request.deviation = 100
2017.02 . 15 14 : 47 : 19.295 Request.type = ORDER_TYPE_BUY_LIMIT ( 2 )
2017.02 . 15 14 : 47 : 19.295 Request.type_filling = ORDER_FILLING_RETURN ( 2 )
2017.02 . 15 14 : 47 : 19.295 Request.type_time = ORDER_TIME_GTC ( 0 )
2017.02 . 15 14 : 47 : 19.295 Request.expiration = 1970.01 . 01 00 : 00 : 00
2017.02 . 15 14 : 47 : 19.295 Request.comment =
2017.02 . 15 14 : 47 : 19.295 Request.position = 0
2017.02 . 15 14 : 47 : 19.295 Request.position_by = 0
2017.02 . 15 14 : 47 : 19.295 Result.retcode = 10009
2017.02 . 15 14 : 47 : 19.295 Result.deal = 0
2017.02 . 15 14 : 47 : 19.295 Result.order = 134117077
2017.02 . 15 14 : 47 : 19.295 Result.volume = 1.0
2017.02 . 15 14 : 47 : 19.295 Result.price = 0.0
2017.02 . 15 14 : 47 : 19.295 Result.bid = 0.0
2017.02 . 15 14 : 47 : 19.295 Result.ask = 0.0
2017.02 . 15 14 : 47 : 19.295 Result.comment = Request executed 61.066 + 0.004 ms
2017.02 . 15 14 : 47 : 19.295 Result.request_id = 9
2017.02 . 15 14 : 47 : 19.295 Result.retcode_external = 0
2017.02 . 15 14 : 47 : 19.295
2017.02 . 15 14 : 47 : 19.295 Bid = 29031.0
2017.02 . 15 14 : 47 : 19.295
2017.02 . 15 14 : 47 : 19.295 Ask = 29038.0
2017.02 . 15 14 : 47 : 19.295
2017.02 . 15 14 : 47 : 19.295 SymbolInfoDouble (Symb, SYMBOL_SESSION_PRICE_LIMIT_MIN ) = 29528.0
2017.02 . 15 14 : 47 : 19.295
2017.02 . 15 14 : 47 : 19.295 OrderSend (Symb, OP_BUYLIMIT , 1 , Ask , 100 , 0 , 0 )
2017.02 . 15 14 : 47 : 19.295 Request.action = TRADE_ACTION_PENDING ( 5 )
2017.02 . 15 14 : 47 : 19.295 Request.magic = 0
2017.02 . 15 14 : 47 : 19.295 Request.order = 0
2017.02 . 15 14 : 47 : 19.295 Request.symbol = DIG- 20170330
2017.02 . 15 14 : 47 : 19.295 Request.volume = 1.0
2017.02 . 15 14 : 47 : 19.295 Request.price = 29038.0
2017.02 . 15 14 : 47 : 19.295 Request.stoplimit = 0.0
2017.02 . 15 14 : 47 : 19.295 Request.sl = 0.0
2017.02 . 15 14 : 47 : 19.295 Request.tp = 0.0
2017.02 . 15 14 : 47 : 19.295 Request.deviation = 100
2017.02 . 15 14 : 47 : 19.295 Request.type = ORDER_TYPE_BUY_LIMIT ( 2 )
2017.02 . 15 14 : 47 : 19.295 Request.type_filling = ORDER_FILLING_RETURN ( 2 )
2017.02 . 15 14 : 47 : 19.295 Request.type_time = ORDER_TIME_GTC ( 0 )
2017.02 . 15 14 : 47 : 19.295 Request.expiration = 1970.01 . 01 00 : 00 : 00
2017.02 . 15 14 : 47 : 19.295 Request.comment =
2017.02 . 15 14 : 47 : 19.295 Request.position = 0
2017.02 . 15 14 : 47 : 19.295 Request.position_by = 0
2017.02 . 15 14 : 47 : 19.297 Result.retcode = 10015
2017.02 . 15 14 : 47 : 19.297 Result.deal = 0
2017.02 . 15 14 : 47 : 19.297 Result.order = 0
2017.02 . 15 14 : 47 : 19.297 Result.volume = 0.0
2017.02 . 15 14 : 47 : 19.297 Result.price = 0.0
2017.02 . 15 14 : 47 : 19.297 Result.bid = 0.0
2017.02 . 15 14 : 47 : 19.297 Result.ask = 0.0
2017.02 . 15 14 : 47 : 19.297 Result.comment = Invalid price 0.015 + 0.000 ms
2017.02 . 15 14 : 47 : 19.297 Result.request_id = 0
2017.02 . 15 14 : 47 : 19.297 Result.retcode_external = 0
2017.02 . 15 14 : 47 : 19.297
2017.02 . 15 14 : 47 : 19.297 Bid = 29031.0
2017.02 . 15 14 : 47 : 19.297
2017.02 . 15 14 : 47 : 19.297 Ask = 29038.0
2017.02 . 15 14 : 47 : 19.297
2017.02 . 15 14 : 47 : 19.297 SymbolInfoDouble (Symb, SYMBOL_SESSION_PRICE_LIMIT_MIN ) = 29528.0
Kayıt
2017.02.15 14:47:19.235 '5122740': buy limit 1.00 DIG-20170330 at 29528
2017.02.15 14:47:19.295 '5122740': accepted buy limit 1.00 DIG-20170330 at 29528
2017.02.15 14:47:19.295 '5122740': order #134117077 buy limit 1.00 / 1.00 DIG-20170330 at market done in 60.996 ms (0.341 ms on server)
2017.02.15 14:47:19.295 '5122740': failed buy limit 1.00 DIG-20170330 at 29038 [Invalid price]
2017.02.15 14:47:19.297 script Test2 (AUDUSD,H1) removed
2017.02.15 14:47:46.586 '5122740': deal #117726626 buy 1.00 DIG-20170330 at 29528 done (based on order #134117077)
Açıklama
İlk olarak, mümkün olan en düşük fiyat olan 29528'de bir BuyLimit belirlemeye çalıştılar. Bu fiyat, Alış fiyatından (29038) çok daha yüksek. Vakaların %99,99'unda BuyLimit, Sor'dan daha yükseğe ayarlanmaz. Ancak, bu yasak değildir, bu nedenle sipariş verildi. Ve sonra (mor) BuyLimit bir pozisyon haline gelene kadar neredeyse yarım dakika geçti. Gerçi anında olması gerekiyordu . Ancak daha da kötüsü BuyLimit'in Ask'ta değil, fiyatından doldurulması . Onlar. limit emri, uygulamada negatif kaymaya neden oldu, bu sadece bir hata!
İkinci OrderSend, BuyLimit'i Sor'dan daha yüksek olmayan normal bir şekilde ayarlama girişimiydi. Ve tabii ki başarısız olduk (kırmızı). Çünkü SYMBOL_SESSION_PRICE_LIMIT_MIN, Ask değerinden büyük olmamalıdır .
Günlükleri yayınlayın. SD uygulamasına kopyalayacağım.
2017.02 . 15 15 : 12 : 09.979 Exp - v7 (EURCHF,M1) Result ERROR= 10021 symbol EURUSD volume 1.0 action 1 tp 0.0 sl 0.0 type 0 price 1.05523 There are no quotes to process the request
2017.02 . 15 15 : 12 : 10.980 Exp - v7 (EURCHF,M1) OPEN DEAL sy=EURUSD op= 0 ll= 1.0 sl= 0 tp= 0 coomment= 134120593 mn= 9998745 SYMBOL_FILLING_MODE = 1 SYMBOL_TRADE_EXEMODE = 1 SYMBOL_EXPIRATION_MODE = 15 SYMBOL_TRADE_MODE = 4 SYMBOL_TRADE_STOPS_LEVEL = 0 SYMBOL_TRADE_FREEZE_LEVEL = 0 SYMBOL_ORDER_MODE = 63 SYMBOL_START_TIME = 0 SYMBOL_EXPIRATION_TIME = 0 SYMBOL_SPREAD = 10 SYMBOL_SESSION_DEALS = 0
2017.02 . 15 15 : 12 : 11.102 Exp - v7 (EURCHF,M1) Result = 10009 symbol EURUSD volume 1.0 action 1 tp 0.0 sl 0.0 type 0 price 1.05526 Request completed
Sadece şimdi benimle olan şeyde, işlem açma kodu değişmedi.
havalı şey
piyasa genel görünümünde - tüm sembolleri göster'e tıklayın. dergiye dökülen
Meta Alıntılar Demosu
Sadece şimdi benimle olan şeyde, işlem açma kodu değişmedi.
"Uzman" değil, "Günlük" sekmesinin günlüğüne ihtiyacınız var.
bekle, orada bir mesajım vardı 2017.02.15 15:13:32.414 semboller 1000'den fazla sembol seçilebilir
arayan
2017.02.15 15:15:25.610 Trades '5246495': accepted instant buy 1.00 EURUSD at 1.05575
2017.02.15 15:15:25.610 Trades '5246495': deal #117730392 buy 1.00 EURUSD at 1.05575 done (based on order #134121023)
2017.02.15 15:15:25.611 Trades '5246495': order #134121023 buy 1.00 / 1.00 EURUSD at 1.05575 done in 94.543 ms
2017.02.15 15:15:25.674 Trades '5246495': failed instant buy 1.00 EURUSD at 1.05574 (deviation: 14) [No prices]
2017.02.15 15:15:26.687 Trades '5246495': failed instant buy 1.00 EURUSD at 1.05574 (deviation: 14) [No prices]
2017.02.15 15:15:27.701 Trades '5246495': failed instant buy 1.00 EURUSD at 1.05574 (deviation: 14) [No prices]
2017.02.15 15:15:28.713 Trades '5246495': failed instant buy 1.00 EURUSD at 1.05578 (deviation: 16) [No prices]
2017.02.15 15:15:29.728 Trades '5246495': instant buy 1.00 EURUSD at 1.05577 (deviation: 16)
2017.02.15 15:15:29.808 Trades '5246495': accepted instant buy 1.00 EURUSD at 1.05577 (deviation: 16)
2017.02.15 15:15:29.808 Trades '5246495': deal #117730398 buy 1.00 EURUSD at 1.05577 done (based on order #134121030)
2017.02.15 15:15:29.808 Trades '5246495': order #134121030 buy 1.00 / 1.00 EURUSD at 1.05577 done in 80.447 ms