Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 298
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
sondar o tampão, por exemplo, desta forma
Como posso ver o bollinger no gráfico exactamente nos parâmetros que estão no código? onde estão configurados os parâmetros indicadores necessários.
O bollinger está a funcionar, mas lê alguns valores errados.
Posso construir um gráfico a partir do alto ou do baixo, ao longo do expoente, etc. Como regulá-lo no código e vê-lo num gráfico para controlar visualmente a EA?
No metatrader5, quando dirijo a minha EA, no testador de estratégia, os indicadores que utiliza são desenhados.
Não os tenho desenhados! O que é que estou a fazer mal?
Aqui está o meu código:
//| test.mq5 |
//| Andrey |
//| http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Andrey"
#property link "http://www.mql5.com"
#property version "1.00"
int BolBandsHandle; // хэндл индикатора Bolinger Bands
double BBUp[],BBLow[],BBMidle[]; // динамические массивы для хранения численных значений Bollinger Bands
//--- входные параметры
input int bands_period= 20; // Период Bollinger Bands
input int dema_period= 20; // Период DEMA
input int bands_shift = 0; // Смещение относительно графика
input double deviation= 2; // Стандартное отклонение
int demaHandle; // хэндл индикатора DEMA
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
printf("test string");
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//---
printf("test string3");
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
//Переменная типа MqlTick позволяет за один вызов функции SymbolInfoTick() получить значения time, Ask, Bid, Last и Volume.
MqlTick last_tick;
//---
if(SymbolInfoTick(Symbol(),last_tick))
{
Print(last_tick.time,": Bid = ",last_tick.bid,
" Ask = ",last_tick.ask," Volume = ",last_tick.volume, " LastPrice = ",last_tick.last );
}
else Print("SymbolInfoTick() failed, error = ",GetLastError());
//---
//---Читаем свечку
MqlRates rates[];
ArraySetAsSeries(rates,true);
int copied=CopyRates(Symbol(),0,0,1,rates);
if(copied>0)
{
//Print("Скопировано баров: "+copied);
string format="open = %G, high = %G, low = %G, close = %G, volume = %d";
string out;
int size=fmin(copied,10);
for(int i=0;i<size;i++)
{
//out=i+":"+TimeToString(rates[i].time);
out=out+" "+StringFormat(format,
rates[i].open,
rates[i].high,
rates[i].low,
rates[i].close,
rates[i].tick_volume);
Print(out);
Print(rates[i].open - rates[i].close );
}
}
else Print("Не удалось получить исторические данные по символу ",Symbol());
//---=======-----\_____BOLLINGER____/--------========--//
//--- получить хэндл индикатора Bollinger Bands и DEMA
BolBandsHandle=iBands(NULL,PERIOD_M30,bands_period,bands_shift,deviation,PRICE_CLOSE);
demaHandle=iDEMA(NULL,PERIOD_D1,dema_period,0,PRICE_CLOSE);
//--- копируем новые значения индикаторов используя хэндлы
if(CopyBuffer(BolBandsHandle,0,0,3,BBMidle)<0 || CopyBuffer(BolBandsHandle,1,0,3,BBUp)<0
|| CopyBuffer(BolBandsHandle,2,0,3,BBLow)<0)
{
Alert("Ошибка копирования буферов индикатора Bollinger Bands - номер ошибки:",GetLastError(),"!!");
return;
}
//********** это цикл надо добавить в код советника, выводит значения при наступлении нового бара
for(int nbar=0; nbar < 1; nbar++)
Print("nbar=", nbar, " BBLow[nbar]=", DoubleToString(BBLow[nbar], _Digits), " BBMidle[nbar]", DoubleToString(BBMidle[nbar], _Digits),
" BBUp[nbar]=", DoubleToString(BBUp[nbar], _Digits));
}
//+------------------------------------------------------------------+
//| BookEvent function |
//+------------------------------------------------------------------+
void OnBookEvent(const string &symbol)
{
//---
printf("test string 1 ");
}
//+------------------------------------------------------------------+
O último campeonato organizado pela MetaQuotes foi em 2012. Agora não existem tais campeonatos. Mas muitos corretores ainda realizam os seus próprios campeonatos. Pode tomar parte neles.
Não funciona. Não importa o número de tampão que se fixa, continua a dizer apenas o último extremo calculado(
como faço para que a EA desenhe linhas de bollinger no arranque?
Eu tenho (código acima) alguns valores de bollinger, mas preciso de observar visualmente os parâmetros.
Socorro!!!
Descarreguei e instalei o metatrader 4 build 711
Descarreguei e instaleiuma conta demo na InstaForex-Demo.com
Não posso subscrever sinais gratuitos nem através do terminal nem através do sítio
Introduzi a palavra-chave e inicio sessão natabulação "Comunidade" no terminal
mostra o equilíbrio
Eu tenho ligação
em terminal:
2014.10.15 23:35:16.541 Alojamento virtual: não conseguiu ligar-se ao servidor ' ' (www.mql5.com:443 falhou)
2014.10.15 23:08:20.101 MQL5.community: autorização falhou
Por favor, ajude a compreender...
H 2014.10.15 23:08:20.101 MQL5.community: a autorização falhou
Pode dizer-me como fazer uma EA aumentar o lote numa posição já aberta? MQL5. Obrigado.