Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 298
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
sondare il buffer, ad esempio in questo modo
Come posso vedere la bollinger sul grafico esattamente nei parametri che sono nel codice? dove sono configurati i parametri richiesti dell'indicatore.
La bollinger funziona, ma legge alcuni valori sbagliati.
Voglio dire che posso costruire un grafico partendo dal massimo o dal minimo, lungo l'esponente, ecc. Come regolarlo nel codice e vederlo su un grafico per controllare visivamente l'EA?
In metatrader5 quando eseguo il mio EA, nel tester delle strategie, gli indicatori che usi sono disegnati.
Non li ho disegnati! Cosa sto facendo di sbagliato?
Ecco il mio codice:
//| 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 ");
}
//+------------------------------------------------------------------+
L'ultimo campionato organizzato da MetaQuotes è stato nel 2012. Ora non ci sono campionati di questo tipo. Ma molti broker tengono ancora i loro campionati. Si può partecipare a loro.
Non funziona. Non importa quale numero di buffer impostate, dice ancora solo l'ultimo estremo calcolato(
come faccio a far sì che l'EA disegni le linee di bollinger all'avvio?
Ho (codice di cui sopra) emesso alcuni valori di bollinger, ma ho bisogno di osservare i parametri visivamente.
Aiuto!!!
Ho scaricato e installato metatrader 4 build 711
Ho scaricato e installato unconto demo su InstaForex-Demo.com
Non posso iscrivermi ai segnali gratuiti né attraverso il terminale né attraverso il sito web
Ho inserito la password e il login nellascheda "Comunità" nel terminale
l'equilibrio mostra
Ho una connessione
nel terminale:
2014.10.15 23:35:16.541 Virtual Hosting: fallita la connessione al server 'www.mql5.com' (www.mql5.com:443 fallita)
2014.10.15 23:08:20.101 MQL5.community: autorizzazione fallita
Per favore, aiutatemi a capire...
H 2014.10.15 23:08:20.101 MQL5.community: autorizzazione fallita
Puoi dirmi come fare in modo che un EA aumenti il lotto in una posizione già aperta? MQL5. Grazie.