Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 66
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
Na verdade, o que você chamou de Trailing não é, é calculado de uma maneira diferente e seu comportamento pode ser ilógico.
Mesmo que nossos conceitos dos termos não coincidam, mas você me entende, não é mesmo?
Resolvido o problema, ele estava aqui:
Esta função não levava em conta todas as negociações abertas, então tive que mudar as condições do loop. Agora é o que parece:
Esta função calcula a soma dos lucros de todas as negociações em aberto no nível de preço especificado para ela. No entanto, há uma opinião citada que não leva em conta a propagação, e eu concordo com ela. O autor deste parecer sugeriu esta solução:
Mas confesso, para ser honesto, não o entendo como ele escreve:
Mas, para ser honesto, eu não o entendo como ele escreve:
Parece que não entendo seu algoritmo; como a propagação é considerada lá? Alguém pode explicar?OrderProfit() conta para posições curtas no atual Ask, é aqui que o valor do spread atual é levado em conta. Se o spread não mudar, quando o preço mudar da atual Licitação para a novaSL o lucro da posição (qualquer, Comprar ou Vender, com um sinal apropriado) em um lote mudará pelo valor do delta, que está escrito no operador:
delta = ( newSL - Bid ) * TickValue;
Em resumo, OrderProfit() conta tudo, incluindo spreads. Fixamos o resultado por um certo momento ( o preço atual) usando OrderProfit(). A partir daqui, tudo o que temos que fazer é monitorar as mudanças de preços.
OrderProfit() é contado para posições curtas no atual Ask, é aqui que os valores de spread atuais são levados em conta. Se o spread não mudar, quando o preço mudar do atual Bid para o newSL, o lucro de um lote da posição (Comprar ou Vender, com o sinal correspondente) mudará pelo valor do delta, que está escrito na declaração:
delta = ( newSL - Bid ) * TickValue;
Em resumo, OrderProfit() conta tudo, incluindo spreads. Fixamos o resultado por um certo momento (o preço atual) usando OrderProfit(). A partir daqui, tudo o que temos que fazer é monitorar a mudança de preço.
Acho que estou começando a entender, mas talvez seja mais correto:
OrderProfit para posições curtas é calculado a partir do Ask price, não é?
A propósito, MarketInfo( SymbolName, MODE_TICKVALUE) retorna 329,02 para o par de moedas EURUSD, é por isso que esta função não funciona corretamente para mim.
Até o momento, decidi ir por um truque, ou seja, MarketInfo(SymbolName, MODE_TICKVALUE) para contar de forma diferente:
Até o momento, decidi ir por um truque, ou seja, MarketInfo(SymbolName, MODE_TICKVALUE) para contar de forma diferente:
A forma como foi escrito é correta. Tanto quanto o Bid se move, tanto quanto o Ask se move, se o spread se mantém inalterado.
Por experiência pessoal, a propagação é normalmente inalterada e bastante forte). Durante movimentos bruscos, vi o spread aumentar de 8 para 80 pontos em um spread de cinco dígitos.
Uma tampa dupla pode ser codificada (de forma confiável)?
Ao testar um Consultor Especialista na revista, um erro aparece
2013.08.07 12:35:41 2012.06.06 05:29 Puria - 1.452 - SQ EURUSD,M30: Erro 4002 (índice de array - fora da faixa)
2013.08.07 12:35:41 2012.06.06 05:29 Puria - 1.452 - SQ EURUSD,M30: Tentativa de abrir uma ordem de compra. Esperando por uma resposta.
Por conseguinte, as ordens não são abertas. Como eliminar o erro? Quais são as razões?
Eu ficaria feliz em ajudar.
Ao testar um EA, um erro aparece no registro
2013.08.07 12:35:41 2012.06.06 05:29 Puria - 1.452 - SQ EURUSD,M30: Erro 4002 (índice de array - fora da faixa)
2013.08.07 12:35:41 2012.06.06 05:29 Puria - 1.452 - SQ EURUSD,M30: Tentativa de abrir uma ordem de compra. Esperando por uma resposta.
Por conseguinte, as ordens não são abertas. Como eliminar o erro? Quais são as razões?
Eu ficaria feliz em ajudar.