Errori, bug, domande - pagina 1789
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Questa è la finestra dove si trovano le schede per le compravendite, la storia, le notizie, ecc. La parola inglese è "Toolbox".
Grazie, non lo sapevo, l'ho implementato. Ora, non posso vedere lo stato degli ultimi articoli. Peccato, non posso programmaticamente fare in modo che l'ultima linea non vada giù?
È possibile, esattamente programmaticamente. Scrivi un indicatore che visualizzi questa linea su tutti i grafici, per esempio.
Gli sviluppatori potrebbero fare in modo che queste informazioni siano duplicate nella barra di stato, o nella barra del titolo della finestra, ma probabilmente non sono interessati.
OrderSend(NULL,OP_BUYLIMIT,1,SymbolInfoDouble(Symbol(),SYMBOL_ASK)-100*_Point,100,0,0,My Order)
Request.action = TRADE_ACTION_PENDING (5)
Request.magic = 0
Request.order = 0
Request.symbol = Si-3.17
Request.volume = 1.0
Request.price = 59647.0
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 100
Request.type = ORDER_TYPE_BUY_LIMIT (2)
Request.type_filling = ORDER_FILLING_RETURN (2)
Request.type_time = ORDER_TIME_GTC (0)
Request.expiration = 1970.01.01 00:00:00
Request.comment = My Order
Request.position = 0
Request.position_by = 0
Result.retcode = 10022
Result.deal = 0
Result.order = 0
Result.volume = 0.0
Result.price = 0.0
Result.bid = 0.0
Result.ask = 0.0
Result.comment = Invalid expiration
Result.request_id = 0
Result.retcode_external = 0
Qual è l'errore?
ORDER_TIME_GTC sul simbolo non è supportato
Grave bug, in quanto riguarda il commercio stesso.
FIBOGroup-MT5 Server, demo, valuta base USD, Netting, build 1525.
Per prima cosa, uno screenshot di "Ordini, compravendite".
Una posizione è stata aperta di 1 lotto e chiusa (non invertita!) di 1,5 lotti.
Il fatto che si tratti di una posizione è confermato dalla schermata "Posizioni".
Ho evidenziato in rosso che c'era anche un errore nel calcolo dello swap (posizione vissuta 1 secondo) e qualche perdita enorme.
Il registro si presenta così
2017.02.09 08:39:15.352 Trades '1013175': deal #1542796 buy 1.00 EURUSD at 1.06763 done (based on order #2246162)
2017.02.09 08:39:15.354 Trades '1013175': order #2246162 buy 1.00 / 1.00 EURUSD at 1.06763 done in 1069.212 ms
2017.02.09 08:39:15.354 Trades '1013175': failed modify #2156238 buy 1.50 EURUSD sl: 0.00000, tp: 0.00000 -> sl: 1.06990, tp: 1.07190 [Invalid stops]
2017.02.09 08:39:15.355 Trades '1013175': exchange sell 1.50 EURUSD at market, close #2156238 buy 1.50 EURUSD 1.07090333
2017.02.09 08:39:16.421 Trades '1013175': deal #1542797 sell 1.50 EURUSD at 1.06761 done (based on order #2246163)
2017.02.09 08:39:16.422 Trades '1013175': order #2246163 sell 1.50 / 1.50 EURUSD at 1.06761 done in 1066.734 ms
PositionGetDouble(POSITION_VOLUME) ha restituito 1,5 lotti, invece di 1,0. Si è verificato un errore di arresto non valido, anche se SYMBOL_TRADE_STOPS_LEVEL == 0.
Probabilmente dovrei aggiungere che la posizione è stata chiusa con Request.position = PositionTicket. Cioè, questo parametro non era zero.
Tutto sommato, una BASE che riguarda direttamente il denaro!
Forum sul trading, sistemi di trading automatico e test di strategie di trading
FORTI. Domande sull'esecuzione
fxsaber, 2017.02.09 08:56
Ho capito bene che in questo caso OrderSend ha restituito true quasi istantaneamente, ma sono stati osservati 65 secondi(ENUM_ORDER_STATE)::OrderGetInteger(ORDER_STATE) == ORDER_STATE_STARTED?
A proposito, perché quando piazzo un ordine in sospeso tramite OrderSend, restituisce true immediatamente dopo che lo stato dell'ordine diventa ORDER_STATE_STARTED, invece di aspettare ORDER_STATE_PLACED?
Non è asincrono OrderSendAsync.
A proposito, perché restituisce true immediatamente quando lo stato dell'ordine diventa ORDER_STATE_STARTED invece di aspettare ORDER_STATE_PLACED quando si piazza un ordine pendente tramite OrderSend?
Non è asincrono OrderSendAsync.
Probabilmente perché questo è il risultato di un OrderSend riuscito e non il risultato di un'impostazione dell'ordine riuscita?
ORDER_STATE_STARTED è il risultato di un OrderCheck riuscito.