Com o DEAL_ADD eu recebo o preço do negócio, portanto o SL no meu caso. Tudo parece correto para mim. Sugiro que você me envie o código que usa, o log backtest (como um arquivo) e uma captura de tela do Strategy tester Settings. Então, posso reproduzir exatamente o mesmo teste que o seu e analisar o resultado. Você pode me enviar um PM, se preferir.
Olá,
você pode me dizer onde exatamente a parada executada ou o preço alvo é armazenado:
Com o DEAL_ADD eu recebo o preço do negócio, portanto o SL no meu caso. Tudo parece correto para mim. Sugiro que você me envie o código que usa, o log backtest (como um arquivo) e uma captura de tela do Strategy tester Settings. Então, posso reproduzir exatamente o mesmo teste que o seu e analisar o resultado. Você pode me enviar um PM, se preferir.
Se você quer dizer TRADE_TRANSACTION_DEAL_ADD e MqlTradeTransaction.price, este preço é sempre 0.
Mesmo se eu não filtrar paraTRADE_TRANSACTION_DEAL_ADD, o preço é sempre 0, após o envio da ordem de entrada.
Eu uso
CTrade.Buy(...) // place entry
e
CTrade.PositionModify // to attach stop and target
encontrar em anexo novamente EA simples. Isto deve demonstrar isso. Ele apenas coloca uma ordem com parada apertada e alvo (parâmetro de entrada) e registra cada transação.
Eu realmente aprecio sua ajuda.
(Talvez você também possa mostrar suas transações de entrada)
encontrar em anexo novamente EA simples. Isto deve demonstrar isso. Ele apenas coloca uma ordem com parada apertada e alvo (parâmetro de entrada) e registra cada transação.
Eu realmente aprecio sua ajuda.
(Talvez você também possa mostrar suas transações de entrada)
Você poderia me dar também o mt-server ip ?
Eu uso o EA que você acabou de publicar. MQ demo, Access point Europe. Teste com o :
Eu retiro um trecho aleatório do registro :
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
Então, você ainda tem um problema ao detectar um SL/TP acionado?
angevoyageur: O log que lhe forneci é do Visualizador, quando você lê o log diretamente da guia Strategy Tester Journal, ele é exibido na ordem inversa.
Normalmente abro o arquivo de log a partir da aba log-tab, onde a ordem é de cima para baixo. Assim, de fato, o logentry que indica o preço é escrito antes da transação ocorrer.
Portanto, estamos falando apenas de testes de retaguarda. Eu testei com meu próprio código e obtenho 3 transações quando uma parada é acionada:
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)
Olá,
você pode me dizer onde exatamente a parada executada ou o preço alvo é armazenado:
a) MqlTradeTransaction
b) MqlTradeRequest
c) MqlTradeResultado
junto com o membro. Qual servidor MetaTrader ?
Obrigado
Portanto, estamos falando apenas de testes de retaguarda. Eu testei com meu próprio código e obtenho 3 transações quando uma parada é acionada:
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 você quer dizer TRADE_TRANSACTION_DEAL_ADD e MqlTradeTransaction.price, este preço é sempre 0.
Mesmo se eu não filtrar paraTRADE_TRANSACTION_DEAL_ADD, o preço é sempre 0, após o envio da ordem de entrada.
Eu uso
CTrade.Buy(...) // place entrye
CTrade.PositionModify // to attach stop and targete
para capturar transações.
Se você quer dizer TRADE_TRANSACTION_DEAL_ADD e MqlTradeTransaction.price, este preço é sempre 0.
Mesmo se eu não filtrar paraTRADE_TRANSACTION_DEAL_ADD, o preço é sempre 0, após o envio da ordem de entrada.
Eu uso
e
e
para capturar transações.
Isto é com a MqlTradeTransaction.price, nem sempre é 0.
Há algo de estranho em seus resultados, mas não consigo ver o que com o código que você fornece.
Aqui o log com seu tc_ea_trans EA :
Olá Angevoyageur,
encontrar em anexo novamente EA simples. Isto deve demonstrar isso. Ele apenas coloca uma ordem com parada apertada e alvo (parâmetro de entrada) e registra cada transação.
Eu realmente aprecio sua ajuda.
(Talvez você também possa mostrar suas transações de entrada)
Você poderia me dar também o mt-server ip ?
Olá Angevoyageur,
encontrar em anexo novamente EA simples. Isto deve demonstrar isso. Ele apenas coloca uma ordem com parada apertada e alvo (parâmetro de entrada) e registra cada transação.
Eu realmente aprecio sua ajuda.
(Talvez você também possa mostrar suas transações de entrada)
Você poderia me dar também o mt-server ip ?
Eu uso o EA que você acabou de publicar. MQ demo, Access point Europe. Teste com o :
Eu retiro um trecho aleatório do registro :
Então, você ainda tem um problema ao detectar um SL/TP acionado?
Eu uso o EA que você acabou de publicar. MQ demo, Access point Europe. Teste com :
Eu retiro um trecho aleatório do registro :
Então, você ainda tem um problema ao detectar um SL/TP acionado?
oh. vejo.eu podia jurar em minhas corridas de ontem que não havia tal preço dado. Eu fiz uma pesquisa de texto para este preço no log de backtest.
Mas agora, posso ver esta transação DEPOIS do logentry
"tirar proveito desencadeado".
na minha última corrida também - junto com o preço de execução.
Peço desculpas por todo o tempo que isso leva.
oh. vejo.eu podia jurar em minhas corridas de ontem que não havia tal preço dado. Fiz uma pesquisa de texto para este preço no log backktest.
Mas agora, posso ver esta transação APÓS a entrada do registro
...O log que lhe forneci é do Visualizador, quando você lê o log diretamente da guia Strategy Tester Journal, ele é exibido na ordem inversa.
Olá Angevoyageur,
"Ponto de acesso Europa. Voltar a testar com :"
você pode me dar o IP completo deste servidor?