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
em um EA contornando a necessidade de valores de entrada para cada indicador.
A alternativa em seu backtester é editar manualmente todos os indicadores
com um buffer de sinal .
Tente isto um pouco mais direto, mas a única abordagem possível até agora.
Saídas:
Elementos ENUM:
Contagem=3
0 x1=-10
1 x2=0
2 x3=11
É importante especificar valores razoáveis parainiciar eparar os parâmetros, pois o ciclo do valor inteiro mínimo ao máximo (que é usado por padrão quando os parâmetros são pulados) executa muito lentamente, levando em conta que as funções de string são usadas no interior.
bool AddEnum(ENUMTYPE enumIn) {
enumIn = 0;
//iterate through enum and add as combo box
for(int i = 0; i<sizeof(enumIn); i++, enumIn++) {
m_list.AddItem(EnumToString(enumIn),i);
PrintFormat("adding %i = %s", i, EnumToString(enumIn));
}
return(0);
}
Eu adicionei isto à classe CComboBox, para que eu pudesse passar em qualquer tipo de ENUM, e ele o adicionaria como uma caixa combinada.
Mas você pode mudá-lo para fazer o que você precisa.
O problema é que, se você não passar um ENUM e passar algo como um duplo ou um flutuador, você pode travar seu aplicativo.
Acho que não há nenhuma maneira de verificar o tipo de dado aprovado.
bool AddEnum(ENUMTYPE enumIn) {
enumIn = 0;
//iterate through enum and add as combo box
for(int i = 0; i<sizeof(enumIn); i++, enumIn++) {
m_list.AddItem(EnumToString(enumIn),i);
PrintFormat("adding %i = %s", i, EnumToString(enumIn));
}
return(0);
}
Adicionei isto à classe CComboBox, para que eu pudesse passar em qualquer tipo de ENUM, e a adicionaria como uma caixa combinada.
Mas você pode mudá-lo para fazer o que você precisa.
O problema é que, se você não passar um ENUM e passar algo como um duplo ou um flutuador, você pode travar seu aplicativo.
Acho que não há nenhuma maneira de verificar o tipo de dado aprovado.
Sim, oops. Eu acabei de notar isso.
Acontece que quando eu fiz isto, o ENUM que eu estava usando na verdade tinha 4 propriedades:\ \
enum Combolist1{item1, item2, item3, item4, item5};
for(int i = 0; GetLastError()==0; i++) {Por exemplo, há uma definição enumerativa:
enum ENUM_FRUIT {APPLE, BANANA, GRAPE};
A seguir, quero usá-lo em loop:
FRUIT_FIRST=APPLE, FRUIT_LAST=GRAPE};
for (ENUM_FRUIT i = APPLE; i <= FRUIT_LAST; ++i) {
Print(EnumToString(i));
}
#define FRUIT_FIRST APPLE
#define FRUIT_LAST GRAPE
for (ENUM_FRUIT i = APPLE; i <= FRUIT_LAST; ++i) {
Print(EnumToString(i));
}
PERIOD_M1, PERIOD_M2, PERIOD_M3, PERIOD_M4, PERIOD_M5, PERIOD_M6,
PERIOD_M10, PERIOD_M12, PERIOD_M15, PERIOD_M20, PERIOD_M30, PERIOD_H1,
PERIOD_H2, PERIOD_H3, PERIOD_H4, PERIOD_H6, PERIOD_H8, PERIOD_H12,
PERIOD_D1, PERIOD_W1, PERIOD_MN1};
ENUM_TIMEFRAMES next(ENUM_TIMEFRAMES curr){
for(int i=0; gcPeriods[i] != curr; ++i){}
return gcPeriods[i+1];
}
Má concepção do que
significa o número de lojas associadas em enumeração ?
Eu sei que esta conversa é bastante antiga, mas aqui está uma maneira fácil de preencher um conjunto de qualquer tipo de enumeração.
Apenas acrescentando minha solução para as gerações futuras sobre como resolvi isto.
Então o problema é saber dinamicamente o número de entradas no enum. Preciso saber isto para criar matrizes de tamanho fixo com valores de enumeração como o índice de array. O que eu tendo a fazer é adicionar um valor reservado no final do enumeral que só é usado como um valor de comprimento. Aqui está um exemplo.
Isto é bom e fácil porque você não precisa ser fixado na última entrada em todos os lugares comoou você poderia adicionar mais entradas ao final do enumero e o array e o loop ainda funcionarão.