[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 112
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
>> Desculpe, mas só estou perguntando se é possível baixar o histórico de cotações não do servidor da Meta Quotes, mas de um servidor de corretagem separado. Vou pedir que você mantenha suas suposições para si mesmo (sem ofensa), porque a MTS não é minha e vou verificar se ela é sensível a mudanças de corretoras.
Como eu pego a aparência de um novo bar em um EA?
Assim :
estática na LastBars;
IBARS = iBars(Símbolo(), Período());
se (LastBars != IBARS)
{
LastBars = IBARS;
.......
......
.......
}
Assim :
estática na LastBars;
IBARS = iBars(Símbolo(), Período());
se (LastBars != IBARS)
{
LastBars = IBARS;
.......
......
.......
}
Sim, então não há nenhum evento sobre o aparecimento de uma nova vela ok, muito obrigado.
É isso, é hora de aprender a programar, agora vou fazer muitas perguntas bobas: )
aqui vamos nós... um.
Que diabos é isto? Um simples Expert Advisor, o que eu fiz de errado? * {\an1} 'end_of_program * I'm sick of this error, and not only in this script.
extern int Lots = 0.1;
extern int stoploss = 50;
extern int takeprofit = 50;
extern int iWPRperiod1 = 50;
extern int iWPRperiod2 = 60;
extern int magic = 555;
int start()
{
int stoploss, takeprofit, iWPRperiod1,iWPRperiod2, magic, lots;
if (iWPR(NULL,0,iWPRperiod1,0)>iWPR(NULL,0,iWPRperiod2,0))
{
OrderSend(NULL, OP_BUY,1,Ask,lots,stoploss,takeprofit,0,magic,0,Red);
}
if (iWPR(NULL,0,iWPRperiod1,0)<iWPR(NULL,0,iWPRperiod2,0))
{
OrderSend(NULL, OP_BUY,1,Ask,Lots,stoploss,takeprofit,0,magic,0,Red);
}
return(0);
}
Primeiro, verifique os suportes: todos eles são braçadeiras de abertura. {...{ em vez de {...} O primeiro erro diz que os parênteses não estão colocados corretamente no programa.
Então você receberá uma mensagem de que estão faltando ponto-e-vírgula no final de uma linha, e você receberá até mesmo um número de linha.
E haverá muito mais deste tipo de bondade porque relatar erros é uma boa ação, não ....... Traduza as mensagens de erro, quase tudo está claro.
Olá a todos. Aqui vai uma pergunta:
Qual versão do código é menos exigente em recursos (e tempo) do sistema?
Eu escrevi um EA e parece bastante complicado, imho. Demora muito tempo para testá-lo...
Estou pensando, talvez encurtar os cálculos de alguma forma.
Neste caso, é mais fácil executar OrderType() ou extrair elemento de massa de matriz[i,1]?
...
OrderSelect(mass[i,0],SELECT_BY_TICKET); //выбрать ордер
sl=TRALING(OrderType()); //вычисляет стоп-лосс
...
//или
...
OrderSelect(mass[i,0],SELECT_BY_TICKET); //выбрать ордер
sl=TRALING_BARS(mass[i,1]); //вычисляет стоп-лосс
...
O mesmo que OrderStopLoss etc.
Ou, por exemplo:
...
//пересекла ли главная линия стохастика сигнальную линию сверху вниз
if(
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF)>
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF)&&
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0)<
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0))
...
//и ниже
...
//пересекла ли главная линия стохастика сигнальную линию cнизу вверх
if(
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF)<
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF)&&
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0)>
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0))
...
faz sentido criar variáveis e atribuir-lhes valores de função e depois usá-los, ou não?
seria do tipo
...
double a=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF);
double b=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF);
double c=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0);
double d=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0);
...
//пересекла ли главная линия стохастика сигнальную линию сверху вниз
if( a>b && c<d )
...
//пересекла ли главная линия стохастика сигнальную линию cнизу вверх
if( a<b && c>d )
...
É mais caro calcular cada vez uma parada, ou criar uma variável, contar uma parada uma vez e depois ler o valor da variável?
Por favor, aconselhem, programadores. Obrigado
Não, eu não vou fixar seus códigos de forma permanente. Você tem a tecnologia para encontrá-la.
A única coisa que devo observar é que não gosto da notação que você usa. Com este arranjo de parênteses, IMHO, o erro é mais difícil de encontrar. Vejam como a KimIV escreve.
Olá a todos. Aqui vai uma pergunta:
Qual versão do código é menos exigente em recursos (e tempo) do sistema?
Eu escrevi um EA e parece bastante complicado, imho. Demora muito tempo para testá-lo.
Acho que, de alguma forma, posso reduzir os cálculos.
Neste caso, é mais fácil executar OrderType() ou extrair massa de elementos de matriz[i,1]?
É mais caro contar cada vez uma parada, ou para criar uma variável, contar uma parada uma vez e depois ler o valor da variável?
Por favor, aconselhem, programadores. Obrigado
Você tem que trabalhar em 0 bar?
Você está tentando encurtar tanto as coisas que não posso deixar de pensar que não é essa a questão...
Você tem que trabalhar a 0 bar?
É que você já está tentando encurtar tanto as coisas que não pode deixar de pensar que não se trata deles...
Não, eu não sou um pipser, se é isso que você quer dizer...
e por que não funcionaria...
É que a máquina já está carregada até o limite, a CPU está fervendo... E quando você começar a rodá-lo, ele começará a contar...
Não quero reescrevê-lo por nada - há muitas coisas assim nos programas...
Então e a pergunta?