Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 511

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
Buona giornata, cari signori!
Ho bisogno di chiamare le variabili: massimo del giorno, minimo del giorno, prezzo di chiusura e di apertura del giorno corrente, e il prezzo di apertura del giorno successivo!
Saluti, AlexMikash
https://docs.mql4.com/ru/series
if(DayOfWeek()==1,2..... && Ora()==1,2....)
{
double hi=iHigh(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//definire high
double low=iLow(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//definire low.
/////////////////////////////////////////////////////////////////////////////////////////////////
double op=iOpen(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//definire l'apertura.
se ((hi-low)<=max_koridor_v_punktah)
{
int buy = OrderSend(Symbol(), OP_BUYSTOP, LotBuy, OpenBuy, 0, StopLossBuy, 0);//aprire ordine Buy.
se (comprare>0)
{
Alert ("L'ordine BuyStop è stato impostato ",buy);
}
int sell= OrderSend(Symbol(), OP_SELLSTOP, LotSell, OpenSell, 0, StopLossSell, 0);//aprire ordine Sell.
se (vendere>0)
{
Alert ("SellStop order set ",sell);
}
if (DayOfWeek()==5 && Hour()==22) //cancella gli ordini pendenti e aperti il venerdì alle 23:00 ora del server
{
se (OrderSelect(sell,SELECT_BY_TICKET)==true)
{
OrderClose(sell,OrderLots(),Bid,3,Green);//(Ticket,lot,Close price, slippage in punti, colore della freccia di chiusura sul grafico)
Chiudere l'ordine di mercato per vendere.
OrderDelete(sell);//chiude il limite di vendita.
}
se (OrderSelect(buy,SELECT_BY_TICKET)==true)
{
OrderClose(buy,OrderLots(),Ask,3,Red);//(biglietto, lotto, prezzo di chiusura, slippage in punti, colore della freccia di chiusura sul grafico)
Chiudere l'ordine di mercato per comprare.
OrderDelete(buy);//chiude il limite di acquisto.
ritorno(0);
}
}
}
Chi può dirmi perché non chiude gli ordini e non cancella i limiti?
almeno
come questo:
далее int buy,sell; должно быть за пределами старта
almeno
come questo:
Il robot viene scaricato dalla memoria quando viene rimosso dal grafico e quando il terminale viene chiuso. Guardate almeno il manuale per un po', è molto utile e toglie un sacco di domande dal tavolo.
Non leggeranno. non guarderanno nemmeno il video. bisogna ipnotizzarli in qualche modo.....
Esiste una risorsa/piattaforma che permette di testare gli EA in più valute?
Sì.
MT5
Sì.
MT5
Un EA scritto in MLQ4 funzionerà?
Salve. Sto cercando di capire come funzionano gli eventi. Non ho lavorato l'evento di eliminazione di un oggetto dal grafico (CHARTEVENT_OBJECT_DELETE). Rimosso sia con il mouse che attraverso la Lista degli oggetti. Costruire 600.
Per favore, ditemi cosa c'è che non va?
Uso il codice dell'aiuto
#define KEY_NUMPAD_5 12
#define KEY_LEFT 37
#define KEY_UP 38
#define KEY_RIGHT 39
#define KEY_DOWN 40
#define KEY_NUMLOCK_DOWN 98
#define KEY_NUMLOCK_LEFT 100
#define KEY_NUMLOCK_5 101
#define KEY_NUMLOCK_RIGHT 102
#define KEY_NUMLOCK_UP 104
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
Print("Запущен эксперт с именем ",MQLInfoString(MQL_PROGRAM_NAME));
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| ChartEvent function |
//+------------------------------------------------------------------+
void OnChartEvent(const int id, // идентификатор события
const long& lparam, // параметр события типа long
const double& dparam, // параметр события типа double
const string& sparam) // параметр события типа string
{
//--- нажатие левой кнопкой мышки на графике
if(id==CHARTEVENT_CLICK)
{
Print("Координаты щелчка мышки на графике: x = ",lparam," y = ",dparam);
}
//--- нажатие мышкой на графическом объекте
if(id==CHARTEVENT_OBJECT_CLICK)
{
Print("Нажатие кнопки мышки на объекте с именем '"+sparam+"'");
}
//--- нажатие кнопки на клавиатуре
if(id==CHARTEVENT_KEYDOWN)
{
switch(int(lparam))
{
case KEY_NUMLOCK_LEFT: Print("Нажата KEY_NUMLOCK_LEFT"); break;
case KEY_LEFT: Print("Нажата KEY_LEFT"); break;
case KEY_NUMLOCK_UP: Print("Нажата KEY_NUMLOCK_UP"); break;
case KEY_UP: Print("Нажата KEY_UP"); break;
case KEY_NUMLOCK_RIGHT: Print("Нажата KEY_NUMLOCK_RIGHT"); break;
case KEY_RIGHT: Print("Нажата KEY_RIGHT"); break;
case KEY_NUMLOCK_DOWN: Print("Нажата KEY_NUMLOCK_DOWN"); break;
case KEY_DOWN: Print("Нажата KEY_DOWN"); break;
case KEY_NUMPAD_5: Print("Нажата KEY_NUMPAD_5"); break;
case KEY_NUMLOCK_5: Print("Нажата KEY_NUMLOCK_5"); break;
default: Print("Нажата какая-то неперечисленная клавиша");
}
ChartRedraw();
}
//--- удален объект
if(id==CHARTEVENT_OBJECT_DELETE)
{
Print("Удален объект с именем ",sparam);
}
//--- создан объект
if(id==CHARTEVENT_OBJECT_CREATE)
{
Print("Создан объект с именем ",sparam);
}
//--- перемещен объект или изменены координаты точек привязки
if(id==CHARTEVENT_OBJECT_DRAG)
{
Print("Изменение точек привязки объекта с именем ",sparam);
}
//--- изменен текст в поле ввода графического объекта Edit
if(id==CHARTEVENT_OBJECT_ENDEDIT)
{
Print("Изменен текст в объекте Edit ",sparam);
}
}
Un EA scritto in MLQ4 funzionerà?
Se si traduce il codice in mt5 allora sì.
non ci sono altri rimedi.
Grazie. A cosa vi servono void init e deinit? Ho capito deinit, esegue solo il codice. Quando il robot parte, giusto? E init?
Come si può usare un codice. Cioè, non dovete preoccuparvi delle cinque cifre. Come faccio a sapere quali sono le mie cinque cifre al momento?
Metalli, scorte e materie prime non contano.