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
Imprimir os resultados do ObjectCreate, talvez haja aí um erro.
Obrigado. Irei definitivamente verificar, mas depois de resolver o novo problema. A EA trabalhou durante algum tempo e foi agora automaticamente removida do gráfico. Não posso pô-lo de volta, diz que o conjunto está cheio.
Vela=1000. O compilador não jura em lado nenhum, não ocorre nada no depurador. Por favor, sugira uma solução para o problema
Isto já foi corrigido.
A próxima construção muito raramente pedirá sinais se não os utilizar.
Isto já foi corrigido.
Porquê ArrayResize=0?
E parece que o ArrayInitialize deve ser acrescentado antes dele.
И
double H
É inicializada cada vez em loop?
Declare antes da função.
Actualização e verificação dupla de parênteses, falta-me um } em
Porquê ArrayResize=0?
Zeroing array Alto[]
Não, o seu tamanho é fixado em 0.
A informação mantém-se no tamanho 0? Como é efectuada a zeragem correctamente?
O tamanho é fixado em zero e depois copia-se a matriz ali.
Tente isso.
void CreateLevels() { double High[]; ArrayResize(High,Candle); // размер = Candle ArrayInitialize(High,NULL); // инициализация нулем ArraySetAsSeries(High,true); CopyHigh(_Symbol,_Period,0,Candle,High); double H; // вынес int j; // вынес for(j=Nachalo;j<=Candle;j++) { //--- поиск макс ----------------------------------- if(iHighest(Symbol(),0,10,MN*2,j-MN)==j) { H=High[j]; } } } // скобки сразу парами ставьте, искать не прийдётся
Actualização corrigida do código, também int jE com o tamanho 0 a informação fica?
E, se o matar, provavelmente poderia chamar a ArrayResize duas vezes, com 0, depois com o tamanho correcto da matriz.
Pode até ser mais rápido... Embora eu não saiba como seria em termos de alocação de memória.