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 961

 
Vinin:
Você verificou no testador? Há apenas 1000 barras disponíveis na partida.

Podes crer! Eu esqueço sempre isso. Obrigado por me lembrar.

Não há como contornar esse limite?

 
goodearth:

Podes crer! Eu esqueço sempre isso. Obrigado por me lembrar.

Não há como contornar esta restrição?


Há um controle para o número de barras necessárias para o cálculo.

if (Bars<MinBar) return;
 
rapid_minus:
Em três dos símbolos há um conselheiro "de acordo com Sleptsov" e no quarto outro conselheiro. Será que eles interferem um com o outro? Nunca vi nenhuma menção de que apenas uma EA deve ser colocada em um símbolo no MT4.
Não, não existem tais restrições. A questão era se uma EA estranha poderia fechar todas as encomendas. E devemos verificar se não há nenhuma condição para fechar todas as ordens de outra EA. Ou pelo menos verifique se tal problema ocorrerá se apenas uma EA for definida.
 
AlexeyVik:
Não, não existem tais restrições. A questão era se uma EA alienígena não poderia fechar todas as encomendas. E devemos verificar se não há nenhuma condição para fechar todas as ordens de outras pessoas nela contidas. Ou pelo menos verifique se haverá tal problema se apenas uma EA tiver sido definida.
Obrigado. Vou tentar na segunda-feira. Mas neste caso, a EA estrangeira deve fechar apenas perdendo pedidos em todos os símbolos. Como fica no código? Eu ainda não encontrei isto.
 
AlexeyVik:

Por favor, esclareça, estou totalmente confuso:

Encontrei um roteiro que fecha os pedidos com lucro ou com menos, mas não entendo a lógica - bool close_only_profit_orders=false é definido em variáveis externas e depois é verificado com negação no f-i start: if(OrderType()==OP_BUY && (!close_only_profit_orders || order_prof>0). Isto é, se não for falso ou houver ordens com lucro, então a função OrderClose() é a seguinte. Mas em nenhum lugar do código, não há condições para que a variável close_only_profit_orders se torne verdadeira. Para que serve então?

 
rapid_minus:

Por favor, esclareça, estou totalmente confuso:

Encontrei um roteiro que fecha os pedidos com lucro ou com menos, mas não entendo a lógica - bool close_only_profit_orders=false é definido em variáveis externas e depois é verificado com negação no f-i start: if(OrderType()==OP_BUY && (!close_only_profit_orders || order_prof>0). Isto é, se não for falso ou houver ordens com lucro, então a função OrderClose() é a seguinte. Mas em nenhum lugar do código, não há condições para que a variável close_only_profit_orders se torne verdadeira. Para que serve então?


Se bool close_only_profit_orders=true;, então somente os lucrativos serão fechados.

Isso é assim.

 
r772ra:

Se, bool close_only_profit_orders=true; então somente as lucrativas são fechadas.

Isso é assim.

Mas em nenhum lugar do código, não há condições segundo as quais a variável close_only_profit_orders se torne verdadeira, ou seja, ela nunca se tornará verdadeira a menos que nós mesmos a tornemosverdadeira, pois esta é uma variável externa. Portanto,se tornarmos issoverdade, isso significará que não devemos fechar encomendas lucrativas. Mas depois há uma contradição com OR -|| order_prof>0.

Ou melhor, o contrário: se for falso, não devemos fechar, e então há uma contradição, e sefor verdade, então tudo está bem...(?)

Completamente confuso.

 
rapid_minus:
Mas em nenhum lugar do código há uma condição para que a variável close_only_profit_orders se torne verdadeira, ou seja, ela nunca se tornará verdadeira.

Cabe a você fechar todos ou apenas os lucrativos.

 
rapid_minus:

Mas em nenhum lugar do código há qualquer condição para que a variável close_only_profit_orders se torne verdadeira, ou seja, ela nunca se tornará verdadeira a menos que nós mesmos a tornemosverdadeira, pois esta é uma variável externa. Portanto,se tornarmos issoverdade, isso significará que não devemos fechar encomendas lucrativas. Mas depois há uma contradição com OR -|| order_prof>0.

Ou melhor, o contrário: se for falso, não devemos fechar, e então há uma contradição, e sefor verdade, então tudo está bem...(?)

Totalmente confuso.

Lógica!

fechamento externode ordens_só_lucrativas = falso; // Fechar qualquer, posições de lucros e perdas, é claro, de acordo com algumas condições.

fechamento_somente_de_ordens_lucrativas externas= verdadeiro; // somente as posições lucrativas são fechadas, as perdidas também não são fechadas, de acordo com algumas condições.

Você pode verificar no testador qual variante é melhor! Ou no modo de otimização 0 = falso e 1 = verdadeiro.

 
Obrigado a todos vocês