Con il DEAL_ADD ottengo il prezzo della transazione, quindi lo SL nel mio caso. Tutto mi sembra corretto. Ti suggerisco di mandarmi il codice che usi, il log del backtest (come file) e uno screenshot di Strategy tester Settings. Poi posso riprodurre esattamente lo stesso test del tuo e analizzare il risultato. Puoi mandarmi un PM se preferisci.
Salve,
potete dirmi dove viene memorizzato esattamente lo stop o il prezzo target eseguito:
Con il DEAL_ADD ottengo il prezzo della transazione, quindi lo SL nel mio caso. Tutto mi sembra corretto. Ti suggerisco di mandarmi il codice che usi, il log del backtest (come file) e uno screenshot di Strategy tester Settings. Poi posso riprodurre esattamente lo stesso test del tuo e analizzare il risultato. Puoi mandarmi un PM se preferisci.
Se intendete TRADE_TRANSACTION_DEAL_ADD e MqlTradeTransaction.price, questo prezzo è sempre 0.
Anche se non filtro perTRADE_TRANSACTION_DEAL_ADD, il prezzo è sempre 0, dopo l'invio dell'ordine di entrata.
Io uso
CTrade.Buy(...) // place entry
e
CTrade.PositionModify // to attach stop and target
trova allegato di nuovo semplice EA. Questo dovrebbe dimostrarlo. Mette solo un ordine con stop e target stretti (param di input) e registra ogni transazione.
Apprezzo molto il tuo aiuto.
(Forse puoi anche mostrare le tue transazioni di ingresso)
trova allegato di nuovo semplice EA. Questo dovrebbe dimostrarlo. Mette solo un ordine con stop e target stretti (param di input) e registra ogni transazione.
Apprezzo molto il tuo aiuto.
(Forse puoi anche mostrare le tue transazioni di ingresso)
Potresti anche darmi l'ip di mt-server?
Io uso l'EA che hai appena postato. MQ demo, punto di accesso Europa. Backtesting con :
Prendo un estratto a caso dal log:
2013.05.1521:54:11 Core 12013.05.0120:02:15take profit triggered buy 0.01 EURUSD 1.31751 sl: 1.31681 tp: 1.31821 [#107 sell 0.01 EURUSD at 1.31821]
2013.05.1521:54:11 Core 12013.05.0120:02:15 deal #107 sell 0.01 EURUSD at 1.31821 done (based on order #107)
2013.05.1521:54:11 Core 12013.05.0120:02:15 deal performed [#107 sell 0.01 EURUSD at 1.31821]
2013.05.1521:54:11 Core 12013.05.0120:02:15 order performed sell 0.01 at 1.31821 [#107 sell 0.01 EURUSD at 1.31821]
2013.05.1521:54:11 Core 12013.05.0120:02:15 requote 1.31823 / 1.31836 / 1.31823 (instant sell 0.01 EURUSD at 1.31836 sl: 1.31906 tp: 1.31766)
2013.05.1521:54:11 Core 12013.05.0120:02:15 CTrade::OrderSend: instant sell 0.01 EURUSD at 1.31836 sl: 1.31906 tp: 1.31766 [requote (1.31823/1.31836)]
2013.05.1521:54:11 Core 12013.05.0120:02:15 instant buy 0.01 EURUSD at 1.31840 sl: 1.31770 tp: 1.31910 (1.31827 / 1.31840 / 1.31827)
2013.05.1521:54:11 Core 12013.05.0120:02:15 deal #108 buy 0.01 EURUSD at 1.31840 done (based on order #108)
2013.05.1521:54:11 Core 12013.05.0120:02:15 deal performed [#108 buy 0.01 EURUSD at 1.31840]
2013.05.1521:54:11 Core 12013.05.0120:02:15 order performed buy 0.01 at 1.31840 [#108 buy 0.01 EURUSD at 1.31840]
2013.05.1521:54:11 Core 12013.05.0120:02:15 CTrade::OrderSend: instant buy 0.01 EURUSD at 1.31840 sl: 1.31770 tp: 1.31910 [done at 1.31840]
2013.05.1521:54:11 Core 12013.05.0120:02:15 trans=symbol=EURUSD price=1.31821 00 volume=0.01 sl=0.0000000 tp=0.0000000 order=107deal=107 entry-type=IN trans-type=DEAL_ADD order_type=BUY deal_type=DEAL_TYPE_SELL type_time=0 expiration=1970.01.0100:00 price_trigger=0.0000000 profit
2013.05.1521:54:11 Core 12013.05.0120:02:15 trans=symbol=EURUSD price=1.3182100 volume=0.01 sl=0.0000000 tp=0.0000000 order=107 deal=0 entry-type=IN trans-type=ORDER_DELETE order_type=SELL deal_type=DEAL_TYPE_BUY type_time=0 expiration=1970.01.0100:00 price_trigger=0.0000000 prof
2013.05.1521:54:11 Core 12013.05.0120:02:15 trans=symbol=EURUSD price=1.3182100 volume=0.00 sl=0.0000000 tp=0.0000000 order=107 deal=0 entry-type=IN trans-type=HISTORY_ADD order_type=SELL deal_type=DEAL_TYPE_BUY type_time=0 expiration=1970.01.0100:00 price_trigger=0.0000000 profi
Quindi, hai ancora un problema nel rilevare uno SL/TP innescato?
Uso l'EA che hai appena postato. MQ demo, punto di accesso Europa. Backtesting con :
Prendo un estratto a caso dal log:
Quindi, hai ancora un problema nel rilevare un SL/TP innescato?
Oh, capisco. Potrei giurare che nelle mie corse di ieri non c'era questo prezzo dato. Ho fatto una ricerca testuale di questo prezzo nel log del backtest.
Ma ora, posso vedere questa transazione DOPO il logentry
"take profit attivato"
anche nella mia ultima esecuzione - insieme al prezzo di esecuzione.
Oh, capisco. Potrei giurare che nei miei giri di ieri non c'era questo prezzo dato. Ho fatto una ricerca testuale di questo prezzo nel log del backtest.
Ma ora, posso vedere questa transazione DOPO il logentry
...
Il log che ti ho fornito è dal Viewer, quando leggi il log direttamente dalla scheda Strategy Tester Journal, viene visualizzato inordine inverso.
angevoyageur: Il log che ti ho fornito è dal Viewer, quando leggi il log direttamente dalla scheda Strategy Tester Journal, viene visualizzato nell'ordine inverso.
Io di solito apro il logfile dalla scheda backtest log, dove l'ordine è dall'alto verso il basso. Quindi, di fatto, la voce di registro che indica il prezzo viene scritta prima che la transazione si verifichi.
Quindi, stiamo parlando solo di backtesting. Ho testato con il mio codice e ottengo 3 transazioni quando viene attivato uno stop:
2013.05.15 10:22:27 Core 1 2013.05.10 16:20:37 Symbol : EURUSD event : TRADE_TRANSACTION_DEAL_ADD(6)
2013.05.15 10:22:27 Core 1 2013.05.10 16:20:37 Symbol : EURUSD event : TRADE_TRANSACTION_ORDER_DELETE(2)
2013.05.15 10:22:27 Core 1 2013.05.10 16:20:37 Symbol : EURUSD event : TRADE_TRANSACTION_HISTORY_ADD(3)
Salve,
potete dirmi dove viene memorizzato esattamente lo stop o il prezzo target eseguito:
a) MqlTradeTransaction
b) MqlTradeRequest
c) MqlTradeResultato
insieme al membro. Quale server MetaTrader?
Grazie.
Quindi, stiamo parlando solo di backtesting. Ho testato con il mio codice e ottengo 3 transazioni quando viene attivato uno stop:
2013.05.15 10:22:27 Core 1 2013.05.10 16:20:37 Symbol : EURUSD event : TRADE_TRANSACTION_DEAL_ADD(6)
2013.05.15 10:22:27 Core 1 2013.05.10 16:20:37 Symbol : EURUSD event : TRADE_TRANSACTION_ORDER_DELETE(2)
2013.05.15 10:22:27 Core 1 2013.05.10 16:20:37 Symbol : EURUSD event : TRADE_TRANSACTION_HISTORY_ADD(3)
Se intendete TRADE_TRANSACTION_DEAL_ADD e MqlTradeTransaction.price, questo prezzo è sempre 0.
Anche se non filtro perTRADE_TRANSACTION_DEAL_ADD, il prezzo è sempre 0, dopo l'invio dell'ordine di entrata.
Io uso
CTrade.Buy(...) // place entrye
CTrade.PositionModify // to attach stop and targete
per catturare le transazioni.
Se intendi TRADE_TRANSACTION_DEAL_ADD e MqlTradeTransaction.price, questo prezzo è sempre 0.
Anche se non filtro perTRADE_TRANSACTION_DEAL_ADD, il prezzo è sempre 0, dopo l'ordine di entrata inviato.
Io uso
e
e
per catturare le transazioni.
Questo è con MqlTradeTransaction.price, non è sempre 0.
C'è qualcosa di strano nei tuoi risultati, ma non riesco a vedere cosa con il codice che fornisci.
Qui il log con il tuo EA tc_ea_trans :
Ciao Angevoyageur,
trova allegato di nuovo semplice EA. Questo dovrebbe dimostrarlo. Mette solo un ordine con stop e target stretti (param di input) e registra ogni transazione.
Apprezzo molto il tuo aiuto.
(Forse puoi anche mostrare le tue transazioni di ingresso)
Potresti anche darmi l'ip di mt-server?
Ciao Angevoyageur,
trova allegato di nuovo semplice EA. Questo dovrebbe dimostrarlo. Mette solo un ordine con stop e target stretti (param di input) e registra ogni transazione.
Apprezzo molto il tuo aiuto.
(Forse puoi anche mostrare le tue transazioni di ingresso)
Potresti anche darmi l'ip di mt-server?
Io uso l'EA che hai appena postato. MQ demo, punto di accesso Europa. Backtesting con :
Prendo un estratto a caso dal log:
Quindi, hai ancora un problema nel rilevare uno SL/TP innescato?
Uso l'EA che hai appena postato. MQ demo, punto di accesso Europa. Backtesting con :
Prendo un estratto a caso dal log:
Quindi, hai ancora un problema nel rilevare un SL/TP innescato?
Oh, capisco. Potrei giurare che nelle mie corse di ieri non c'era questo prezzo dato. Ho fatto una ricerca testuale di questo prezzo nel log del backtest.
Ma ora, posso vedere questa transazione DOPO il logentry
"take profit attivato"
anche nella mia ultima esecuzione - insieme al prezzo di esecuzione.
Mi scuso per tutto il tempo che ci vuole.
Oh, capisco. Potrei giurare che nei miei giri di ieri non c'era questo prezzo dato. Ho fatto una ricerca testuale di questo prezzo nel log del backtest.
Ma ora, posso vedere questa transazione DOPO il logentry
...Il log che ti ho fornito è dal Viewer, quando leggi il log direttamente dalla scheda Strategy Tester Journal, viene visualizzato nell' ordine inverso.
Ciao Angevoyageur,
"Punto di accesso Europa. Backtesting con :"
puoi darmi l'IP completo di questo server?