Diskussion zum Artikel "Über das Finden von zeitlicher Mustern im Devisenmarkt mit dem CatBoost-Algorithmus" - Seite 2

 
Maxim Dmitrievsky:

Spread wird im Custom Tester berücksichtigt, dann werden die Modelle im MT5-Tester überprüft (siehe 1. Artikel der Serie).

D.h. die Logik ist leicht (relativ) auf MT5 zu übertragen, fast automatisch.

Ja, ich habe mir das schon angeschaut. Ich verstehe, dass Sie den Durchschnittspreis (Ask+Bid)/2 für die Analyse nehmen. Ich habe es in Ihrer Software gesehen und ich denke, ich werde es in meine Software einbauen. Dieser Spread verdirbt alles, das Spread-Rauschen ist bei vielen Paaren größer als die durchschnittliche Kerzengröße. Hier ist die Lösung ). Aber auf High und Low Peaks wäre es mehr Spread, sie auch zu korrigieren ). Haben Sie Korrekturen auf alle 4 Punkte oder nur Eröffnung und Schließung? Oder vielleicht scheint es für mich))). Wenn Sie sie nicht haben, können Sie versuchen, sie hinzuzufügen. Es wird sofort glätten die Preis-Serie, und die Varianten, die innerhalb der Spanne werden fast alle auf einmal herausfallen

 
Ich habe, weil die Spanne näher an den Punkt 0:00 überall steigt in den meisten der Varianten gibt es die Suche )))) Sie testen in der Tester und die Spanne ist höher als die Erwartung )). Ich denke, mit der Einführung dieses Filters wird sich alles dramatisch ändern ))
 
Evgeniy Ilin:

Ja, ich habe mir das bereits angesehen. Ich habe gehört, dass Sie auch den Durchschnittspreis (Angebot+Gebot)/2 für die Analyse verwenden. Ich habe das in Ihrer Software gesehen, also werde ich es wohl auch in meine Software einbauen. Dieser Spread verdirbt alles, das Spread-Rauschen ist bei vielen Paaren größer als die durchschnittliche Kerzengröße. Hier ist die Lösung ). Aber auf High und Low Peaks wäre es mehr Spread, sie auch zu korrigieren ). Haben Sie Korrekturen auf alle 4 Punkte oder nur Eröffnung und Schließung? Oder vielleicht scheint es für mich))). Wenn Sie sie nicht haben, können Sie versuchen, sie hinzuzufügen. Es wird sofort glätten die Preis-Serie, und die Varianten, die innerhalb der Spanne werden fast alle auf einmal fallen.

Nein, die Eröffnungskurse. Der Spread wird in der Phase des Modelltrainings festgelegt, d.h. Abschlüsse unterhalb des Spreads werden verworfen.

 
Maxim Dmitrievsky:

nein, der Eröffnungskurs. Der Spread wird in der Phase des Modelltrainings festgelegt, d.h. Abschlüsse unterhalb des Spreads werden verworfen

aber Sie passen die Open[]-Werte nicht an. Im Allgemeinen hat mich die Tatsache, dass ich all dies missverstanden habe, auf die richtige Idee gebracht, DDD. Sie können versuchen, Spread-Geräusche auszuschalten, indem Sie Open[] Close[] High[] Low[] Werte mit Spread an den gleichen Punkten korrigieren. dann erhalten Sie den Preis von sagen wir OpenX[i]=Open[i]+(Spread/2)*_Point. Das ist genau die Mitte zwischen Ask und Bid). Diese Reihe ist zuverlässiger, da das Spread-Rauschen aus der Analyse herausgefiltert wird.

 
Evgeniy Ilin:

aber Sie passen die Open[]-Werte nicht an. Im Allgemeinen, weil ich das alles missverstanden habe, hatte ich die richtige Idee DDD. Sie können versuchen, Spread-Geräusche zu eliminieren, indem Sie Open[] Close[] High[] Low[] Werte mit Spread an den gleichen Punkten korrigieren. dann erhalten Sie den Preis von sagen wir OpenX[i]=Open[i]+(Spread/2)*_Point. Das ist genau die Mitte zwischen Ask und Bid). Diese Reihe ist zuverlässiger, da das Spread-Rauschen aus der Analyse herausgefiltert wird.

Ich habe versucht, auf andere Weise zu korrigieren, indem ich Cluster im Merkmalsraum verschoben habe, aber das ist eine andere Geschichte ) Ja, so kann man es machen.

 
Maxim Dmitrievsky:

Logik ist leicht (relativ) auf MT5 zu übertragen, fast automatisch.

können Sie einen EA für dieses Modell mit Timings veröffentlichen?

 
Evgeni Gavrilovi:

können Sie einen EA für genau dieses Modell mit Zeitangaben veröffentlichen?

Die Antwort ist die gleiche wie im 2. Artikel, aber im Terminal müssen Sie die Einschränkung der Eröffnung von Trades nach Zeit hinzufügen, und das alles

dasselbe für Wochentage und verschiedene Kombinationen. Auch im MT5 ist der Countdown der Stunden um 1 nach rechts verschoben, d.h. wenn in Python die 4. Stunde, dann in MT die 5.

MqlDateTime hours;

void OnTick() {
//---
   if(!isNewBar()) return;
   TimeToStruct(TimeCurrent(), hours);
}

if(hours.hour == 5 && countOrders() == 0 && CheckMoneyForTrade(_Symbol,LotsOptimized(),ORDER_TYPE_BUY)) {
      if(sig < 0.5)
         OrderSend(Symbol(),OP_BUY,LotsOptimized(), Ask, 0, Bid-stoploss*_Point, Ask+takeprofit*_Point, NULL, OrderMagic);
      else if(sig > 0.5)
         OrderSend(Symbol(),OP_SELL,LotsOptimized(), Bid, 0, Ask+stoploss*_Point, Bid-takeprofit*_Point, NULL, OrderMagic);
      return;
   }
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Информация об инструменте - Состояние окружения - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Maxim Dmitrievsky:

Die Antwort ist die gleiche wie im 2. Artikel, aber im Terminal müssen Sie die Einschränkung der Eröffnung von Geschäften nach Zeit hinzufügen, und das war's

das gleiche für die Wochentage und verschiedene Kombinationen. Außerdem wird in MT5 der Stunden-Countdown um 1 nach rechts verschoben, d.h. wenn in Python die 4. Stunde, dann in MT die 5.

danke.

[Gelöscht]  
Bravo! Eine tolle Idee. Ich ziehe meinen Hut vor Ihnen, Sie sind so unglaublich originell und kreativ!!!!
 

Interessantes und nahes Thema.

Es wäre sehr neugierig, die endgültige Equity eines Standard-MT5-Testers auf einem der FORTS-Instrumente Ihrer Wahl zu sehen, die durch die Anwendung dieser Methode erhalten wurde.

Als Feedback bin ich bereit, den Wert meines saisonalen Algorithmus auf dem ausgewählten Instrument zu veröffentlichen :)