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
A função isCloseLastPosByStop().
Esta função retorna uma bandeira para fechar a última posição por meio de uma parada. A bandeira está hasteada - Verdade - StopLoss foi acionada. Bandeira arriada - Falsa - a posição foi fechada por outro motivo. Uma seleção mais precisa das posições a serem levadas em conta é definida usando parâmetros externos:
Função OpenPosition() para on-line.
2008.05.20 04:47:41 !OBLD_EUR_S EURUSD,M30: não são permitidas chamadas de funções especializadas; 'stdlib' -'ErrorDescription' (descrição do erro)
Eu conectei a função OpenPosition() no meu Expert Advisor sobre o real, o erro 4059
Oerro 4059 significa que a função não está disponível no modo teste. O identificador do erro é ERR_FUNCTION_NOT_ALLOWED_IN_TESTING_MODE. As seguintes funções geram o erro: MarketInfo, MessageBox, SendFTP, SendMail, WindowIsVisible, WindowFind, WindowHandle.
mudou NULL para Symbol(), desapareceu, então uma mensagem apareceu
2008.05.20 04:47:41 !OBLD_EUR_S EURUSD,M30: não são permitidas chamadas de funções especializadas; 'stdlib' -'ErrorDescription' (descrição do erro)
A função isCloseLastPosByTake().
Esta função retorna uma bandeira para fechar a última posição na Take Profit. A bandeira está hasteada - Verdadeiro - TakeProfit foi acionada. Bandeira arriada - Falsa - posição foi fechada devido a outro motivo. Uma seleção mais precisa das posições a serem consideradas é feita usando parâmetros externos:
A função isLossLastPos().
Esta função retorna a bandeira de perda da última posição fechada. Flag up - True - última posição foi fechada com uma perda. Bandeiras para baixo - Falso - a última posição foi fechada ou a zero, ou com lucro. Esta função não considera permutas e comissões. A seleção das posições é definida por parâmetros externos:
A função isTradeToDay().
Esta função retorna a bandeira comercial para hoje. A bandeira está hasteada - É verdade - havia posições em aberto hoje. Bandeira para baixo - Falso - nenhuma posição aberta hoje. A seleção das posições a serem levadas em consideração é definida por parâmetros externos:
A função isCloseLastPosByStop().
Esta função retorna uma bandeira para fechar a última posição por meio de uma parada. A bandeira está hasteada - Verdade - StopLoss foi acionada. Bandeira arriada - Falsa - a posição foi fechada por outro motivo. Uma seleção mais precisa das posições a serem levadas em conta é definida usando parâmetros externos:
().Tarde . Ao implementar o código com esta função, surgiu alguma confusão. Eu apliquei esta função desta maneira:
Até este ponto tudo funciona bem! Todas as posições COMPRAR são fechadas e as posições COMPRAR são excluídas, como eu defini! Mas então o Expert Advisor redefine as ordens pendentes de acordo com seus sinais de entrada. Como esperado.
Mas essas ordens são imediatamente apagadas! Aparentemente, a bandeira ainda está pendurada ali. Mas por que está pendurado? As últimas posições não foram fechadas por uma Stop Loss, mas pela força!
Como devo lidar com esta situação? Como posso conseguir que meu Expert Advisor exiba suas próximas ordens normalmente após o comando de fechamento deste algoritmo ser executado?
O que devo fazer nesta situação? Para que a EA possa fazer suas próximas encomendas normalmente após o comando para fechá-las?
Esta questão precisa ser abordada no contexto de toda a tarefa, porque não é apenas uma ação única, mas uma interação, e em uma certa ordem. Portanto, descreva a tarefa na íntegra. Você não precisa de um código. Basta descrever a tarefa em palavras.
Pergunta de aquecimento. Por que você precisa apagar os pedidos e colocá-los de volta? Acho que é preferível modificar.
Minhas ordens e posições são agrupadas em matrizes de acordo com lucros, perdas, ordens de parada e limite, e outros motivos.
Neste caso particular, estou fechando o conjunto de posições de COMPRA que foram abertas usando ordens de parada e que acumularam um lucro especificado. E eu apago todas as outras ordens de parada que não funcionaram.
//---------------------------------------------------------------------------------------------
Agora eu coloquei uma função de comentário - Comentário (isCloseLastPosByStop());
Olhando para. Inicialmente, a função =0. Após o primeiro fechamento de um Stop Loss Comment (isCloseLastPosByStop()); muda para um, e então - após o fechamento forçado de outras posições, não retorna a zero, mas continua a ser um!