Erros, bugs, perguntas - página 1789
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Esta é a janela onde se encontram os separadores para o comércio, história, notícias, etc. A palavra inglesa é "Toolbox" (Caixa de ferramentas).
Obrigado, não sabia, implementou-o. Agora, não consigo ver o estado dos últimos artigos. É pena, não posso programá-lo de forma a que a última linha não desça?
É possível, exactamente programático. Escrever um indicador que exibe esta linha em todos os gráficos, por exemplo.
Os programadores poderiam fazer esta informação duplicar na barra de estado, ou na barra de título da janela, mas provavelmente não estão interessados nisso.
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
O que é o erro?
O ORDER_TIME_GTC sobre o símbolo não é suportado
Insecto grave, uma vez que diz respeito ao próprio comércio.
Servidor FIBOGroup-MT5, demo, moeda base USD, Netting, construir 1525.
Primeiro, um screenshot de "Ordens, Acordos".
Uma posição foi aberta por 1 lote e fechada (não invertida!) por 1,5 lotes.
O facto de ser uma posição é confirmado pelo ecrã "Posições".
Salientei a vermelho que também houve um erro no cálculo de swap (posição viveu 1 segundo) e algumas enormes perdas.
O tronco tem este aspecto
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) devolveu 1,5 lotes, em vez de 1,0. O erro de paragem inválido ocorreu, embora SYMBOL_TRADE_STOPS_LEVEL == 0.
Devo provavelmente acrescentar que a posição foi fechada com Request.position = PositionTicket. Ou seja, este parâmetro não era zero.
Tudo em suma, uma BASE que diz directamente respeito ao dinheiro!
Fórum sobre comércio, sistemas comerciais automatizados e teste de estratégias comerciais
FORTES. Perguntas sobre a execução
fxsaber, 2017.02.09 08:56
Compreendo correctamente que, neste caso, OrderSend retornou verdadeiro quase instantaneamente, mas 65 segundos observados(ENUM_ORDER_STATE)::OrderGetInteger(ORDER_STATE) == ORDER_STATE_STARTED?
A propósito, porque é que quando coloco uma encomenda pendente através de OrderSend, esta volta a ser verdadeira imediatamente após o estado da encomenda se tornar ORDER_STATE_STARTED, em vez de esperar pelo ORDER_STATE_PLACED?
Não é assíncrono OrderSendAsync.
A propósito, porque é que regressa imediatamente quando o estado da encomenda se torna ORDER_STATE_STARTED em vez de esperar pelo ORDER_STATE_PLACED ao colocar uma encomenda pendente através de OrderSend?
Não é assíncrono OrderSendAsync.
Provavelmente porque é o resultado de uma encomenda bem sucedida e não o resultado de uma encomenda bem sucedida?
ORDER_STATE_STARTED é o resultado de um OrderCheck bem sucedido.