Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 924

 
Nauris Zukas:

Ohne diese Änderung lässt sich dieMQl5-Hilfe nicht öffnen.

Verfügen Sie über eine schnelle Internetverbindung? Wenn die Hilfe nicht geöffnet wird, bedeutet dies, dass sie heruntergeladen wird. Früher gab es im Logbuch Meldungen über den Hochladevorgang, jetzt sind die Meldungen entfernt worden.

 

Können Sie mir das bitte sagen!!!

Was soll in iCustom nach dem Namen des Indikators geschrieben werden?

 
TaywinLannister:

Können Sie mir das bitte sagen!!!

Was soll ich in iCustom nach dem Namen des Indikators schreiben?

Beispiele mit Code durchsuchen: iCustom

 
TaywinLannister:

Können Sie mir das bitte sagen!!!

Was soll in iCustom nach dem Namen des Indikators geschrieben werden?

Hilfe auf der Website.
Документация по MQL5: Технические индикаторы / iCustom
Документация по MQL5: Технические индикаторы / iCustom
  • www.mql5.com
[in] input-параметры пользовательского индикатора, разделенные запятыми. Тип и порядок следования параметров должен соответствовать. Если параметры не указаны, то будут использованы значения по умолчанию. INVALID_HANDLE. Для освобождения памяти компьютера от неиспользуемого больше индикатора служит функция IndicatorRelease(), которой...
 
foreXteller:

Lieber Wladimir Karputow!

Vielen Dank für den Link!

Ich habe mir Ihren empfohlenen Artikel "TICK GENERATION ALGORITHM IN THE METATRADER 5 TERMINAL TEST" angesehen.

Es ist ein wenig anders - ich möchte keine Tick-Werte im Minutenabstand analysieren, und die letzten Marktwerte aus SymbolInfoTick() sind jetzt nicht so wichtig.

Um inZukunft mit MetaTrader 5 zu spielen , möchte ich meine Strategie (meinen Roboter) mit meinen Programmen auf einminütigen Kursen mehrerer Währungen gleichzeitig testen, unter Berücksichtigung ihrerASK, BID, VOLUME und SPREAD, aber keine Kerzenständer.

Da die Programme in VISUAL Cgeschrieben sind , kann ich MT nicht zum Testen verwenden.

Die Programme sind recht komplex und können kaum in MQLübersetzt werden (ich plane, in Zukunft DLL-Dateien zu verwenden ).

Vielen Dank für Ihre Aufmerksamkeit!

LieberWladimir Karputow!



Der von Ihnen empfohlene Artikel lautet wie folgt:

"Algorithmus zur Erzeugung von Ticks

"Der Strategy Tester des MetaTrader 5-Terminals verwendet beim Testen nur einen Preissimulationsmodus - die Erzeugung von Ticks auf der Grundlage der vorhandenen historischen Daten auf den Minuten-Zeitrahmen unter Verwendung der verwendeten Symbole".

Bitte geben Sie an, wo Sie die"vorhandenen historischen Daten im Minutenbereich" erhalten können.

Vielen Dank im Voraus!!!


 

Können Sie mir sagen, wie ich ein Positionsschließungsereignis abfangen kann?

void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   ...
  }
 
void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   if(trans.deal_type!=DEAL_TYPE_BUY && trans.deal_type!=DEAL_TYPE_SELL)
      return;
   ENUM_DEAL_ENTRY entry_type=(ENUM_DEAL_ENTRY)HistoryDealGetInteger(trans.deal,DEAL_ENTRY);
   if(entry_type==DEAL_ENTRY_IN)
      return;
  }

Ist dies richtig? Ich denke, es sollte auch eine Lautstärkekontrolle hinzugefügt werden.

 
foreXteller:

LieberWladimir Karputow!



In dem von Ihnen empfohlenen Artikel heißt es Folgendes:

"Algorithmus zur Erzeugung von Ticks

Der Strategy Tester des MetaTrader 5-Terminals verwendet beim Testen nur einen Preissimulationsmodus - die Erzeugung von Ticks auf der Grundlage der vorhandenen historischen Daten auf den einminütigen Zeitrahmen für die verwendeten Symbole".

Bitte geben Sie an, wo Sie die"vorhandenen historischen Daten im Minutenbereich" erhalten können.

Vielen Dank im Voraus!!!


Im MetaTrader 5 ist bereits alles vorhanden. Von Anfang an. Und zwar sofort. Sobald Sie sich mit dem Handelsserver verbinden, haben Sie sofort Zugriff auf die gesamte Tick-Historie.

Wenn Sie online arbeiten, arbeiten Sie natürlich mit echten Zecken. Während der Arbeit im Strategietester können Sie den Modus "Jeder Tick basiert auf realen Ticks" wählen - die genaueste Methode, die realen historischen Ticks, oder einen der Tick-Erzeugungsmodi: "Alle Ticks", "OHLC".

 

Bitte sagen Sie mir, ob es einen universellen Code gibt, der es ermöglicht, den Gewinn von Positionen in der Historie zu erhalten? Zumindest nach pos_id. Das würde auf allen Märkten funktionieren.

 
Juer:

Können Sie mir sagen, wie ich ein Positionsschließungsereignis abfangen kann?

Für Forex verwende ich diese Option.

/*********************TradeTransaction function**********************/
void OnTradeTransaction(const MqlTradeTransaction& trans,
                        const MqlTradeRequest& request,
                        const MqlTradeResult& result)
{
  if(trans.type == TRADE_TRANSACTION_DEAL_ADD && trans.symbol == _Symbol)
   {
    /******************** Если открылась позиция********************/
    if(PositionSelectByTicket(trans.position) && PositionGetInteger(POSITION_MAGIC) == magick)
      ifOpenedPosition(trans);
    /******************** Если закрылась позиция********************/
    if(!PositionSelectByTicket(trans.position))
     ifClosedPosition(trans);
   }
}/*******************************************************************/

D.h. ob die Stelle existiert oder nicht.

Juer:

Bitte sagen Sie mir, ob es einen universellen Code gibt, mit dem man den Gewinn von Positionen in der Historie abrufen kann? Zumindest nach pos_id. Es würde auf allen Märkten funktionieren.

Das Schreiben eines solchen Textes ist "ein Kinderspiel". Sie wählen einfach die Geschäfte aus, die zu der Position gehören, und gehen sie in einer Schleife durch, um den Gewinn, den Swap und die Provision zu addieren.
Grund der Beschwerde: