Eu acho que você tinha que embrulhar chamadas indicadoras idênticas em uma função, o código seria mais compacto, e quem sabe, agora você está usando valores indicadores para 4 barras, amanhã para 5 ...
ou seja
int SignalByPuria(constint bar)
{
malw=iMA(NULL,0,MovingPeriodLw,0,MODE_EMA,PRICE_CLOSE,bar);
mas1=iMA(NULL,0,MovingPeriodS1,0,MODE_LWMA,PRICE_LOW,bar);
mas2=iMA(NULL,0,MovingPeriodS2,0,MODE_LWMA,PRICE_LOW,bar);
......
}
às vezes há indicadores que não têm um sinal comercial em uma determinada barra. Normalmente uso enum E_CMD{CMD_BUY,CMD_SELL,CMD_NONE};
e então a assinatura da função "sinal" seráE_CMD SignalByPuria(const int bar) , e o próprio código EA se transformará em algo como isto:
Eu acho que você deveria ter embrulhado as mesmas chamadas indicadoras em uma função, o código teria sido mais compacto, e quem sabe, agora você usa valores indicadores em 4 barras, amanhã em 5...
ou seja
às vezes há indicadores que não têm um sinal comercial em uma determinada barra. Normalmente uso enum E_CMD{CMD_BUY,CMD_SELL,CMD_NONE};
e então a assinatura da função "sinal" seráE_CMD SignalByPuria(const int bar) , e o próprio código EA se transformará em algo como isto:
imho, esta abordagem permite adicionar rapidamente novos sinais comerciais ao código EA já escrito
Há dedos para o fato de que é inapropriado colocar apenas OrderSend, e depois não reclamar que algo está errado. Você sempre tem que procurar por erros.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Se você souber de outra opção, escreva...
Você pode ajudar as pessoas).
Você faz todas as variáveis separadamente no inite e as separa por processamento adicional (não é necessário ser preguiçoso).
A seguir, colocar os blocos entre parênteses e comparar as variáveis de retorno.
Fazer todas as variáveis separadamente no init e separá-las por processamento posterior (não é preciso ser preguiçoso).
A seguir, colocar os blocos entre parênteses e comparar as variáveis de retorno.
Em algum lugar como este...
Eu queria postar a coruja inteira, mas o fórum não me deixa.
Que fragmento você quer?
Em algum lugar como este...
Que peça você quer?
Fórum sobre comércio, sistemas automatizados de comércio e testes estratégicos
Qualquer pergunta de novatos em MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos
MakarFX, 2021.10.08 18:43
Eu acho que você tinha que embrulhar chamadas indicadoras idênticas em uma função, o código seria mais compacto, e quem sabe, agora você está usando valores indicadores para 4 barras, amanhã para 5 ...
ou seja
às vezes há indicadores que não têm um sinal comercial em uma determinada barra. Normalmente uso enum E_CMD{CMD_BUY,CMD_SELL,CMD_NONE};
e então a assinatura da função "sinal" seráE_CMD SignalByPuria(const int bar) , e o próprio código EA se transformará em algo como isto:
imho, esta abordagem permite adicionar rapidamente novos sinais comerciais ao código EA já escrito
Eu acho que você deveria ter embrulhado as mesmas chamadas indicadoras em uma função, o código teria sido mais compacto, e quem sabe, agora você usa valores indicadores em 4 barras, amanhã em 5...
ou seja
às vezes há indicadores que não têm um sinal comercial em uma determinada barra. Normalmente uso enum E_CMD{CMD_BUY,CMD_SELL,CMD_NONE};
e então a assinatura da função "sinal" seráE_CMD SignalByPuria(const int bar) , e o próprio código EA se transformará em algo como isto:
imho, esta abordagem permite adicionar rapidamente novos sinais comerciais ao código EA já escrito
Voltando à nossa conversa, aqui está a função de abertura de posição de mercado para o MT4
Devolve hoje a bandeira comercial
Retorna número de posições
Tudo otimizado para a construção atual do terminal.
Tudo otimizado para a construção atual do terminal.
Não entendo porque há dedos?
Há dedos para o fato de que é inapropriado colocar apenas OrderSend, e depois não reclamar que algo está errado. Você sempre tem que procurar por erros.