Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 511
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Guten Tag, meine Damen und Herren!
Ich muss die Variablen aufrufen: Tagesmaximum, Tagesminimum, Schluss- und Eröffnungskurs des aktuellen Tages und den Eröffnungskurs des nächsten Tages!
Mit freundlichen Grüßen, AlexMikash
https://docs.mql4.com/ru/series
if(TagderWoche()==1,2..... && Stunde()==1,2....)
{
double hi=iHigh(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//define high
double low=iLow(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//define low.
/////////////////////////////////////////////////////////////////////////////////////////////////
double op=iOpen(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//define opening.
wenn ((hi-low)<=max_koridor_v_punktah)
{
int buy = OrderSend(Symbol(), OP_BUYSTOP, LotBuy, OpenBuy, 0, StopLossBuy, 0);//Kaufauftrag eröffnen.
wenn (Kauf>0)
{
Alert ("Die BuyStop-Order wurde gesetzt ",buy);
}
int sell= OrderSend(Symbol(), OP_SELLSTOP, LotSell, OpenSell, 0, StopLossSell, 0);//Offener Verkaufsauftrag.
wenn (Verkauf>0)
{
Alert ("SellStop order set ",sell);
}
if (DayOfWeek()==5 && Hour()==22) //Löschen von ausstehenden und offenen Aufträgen am Freitag, 23:00 Serverzeit
{
if (OrderSelect(sell,SELECT_BY_TICKET)==true)
{
OrderClose(sell,OrderLots(),Bid,3,Green);//(Ticket,lot,Close price, Slippage in Punkten, Farbe des Close-Pfeils auf dem Chart)
Marktauftrag zum Verkauf schließen.
OrderDelete(sell);//Schließen des Verkaufslimits.
}
if (OrderSelect(buy,SELECT_BY_TICKET)==true)
{
OrderClose(buy,OrderLots(),Ask,3,Red);//(Ticket, Lot, Schlusskurs, Slippage in Punkten, Farbe des Schlusspfeils auf dem Chart)
Marktauftrag zum Kauf schließen.
OrderDelete(buy);//Schließen des Kauflimits.
zurück(0);
}
}
}
Wer kann mir sagen, warum er Aufträge nicht schließt und Limits nicht löscht?
mindestens
wie diese:
далее int buy,sell; должно быть за пределами старта
mindestens
wie diese:
Der Roboter wird aus dem Speicher gelöscht, wenn er aus dem Diagramm entfernt wird und wenn das Terminal geschlossen wird. Schauen Sie zumindest eine Weile in das Handbuch, es ist sehr nützlich und nimmt viele Fragen vom Tisch.
sie werden nicht lesen. sie werden sich nicht einmal das video ansehen. man muss sie irgendwie hypnotisieren.....
Gibt es eine Ressource/Plattform, die das Testen von EAs in mehreren Währungen ermöglicht?
ja.
MT5
Ja.
MT5
Wird ein in MLQ4 geschriebener EA funktionieren?
Hallo. Ich versuche herauszufinden, wie die Ereignisse funktionieren. Ich habe das Ereignis des Löschens eines Objekts aus dem Diagramm (CHARTEVENT_OBJECT_DELETE) NICHT bearbeitet. Entfernt sowohl mit der Maus als auch über die Objektliste. Bauen Sie 600.
Bitte sagen Sie mir, was los ist?
Ich verwende den Code aus der Hilfe
#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);
}
}
Wird ein in MLQ4 geschriebener EA funktionieren?
Wenn Sie den Code in mt5 übersetzen, ja.
es gibt keine anderen Abhilfemaßnahmen.
Ich danke Ihnen. Wozu brauchen Sie void init und deinit? Ich verstehe deinit, es führt nur Code aus. Wenn der Roboter startet, richtig? Und init?
Wie können Sie einen Code verwenden. Das heißt, Sie müssen sich nicht um die fünf Ziffern kümmern. Woher weiß ich, wie hoch meine fünf Ziffern im Moment sind?
Metalle, Vorräte und Rohstoffe zählen nicht.