[Archiv] EIN LAND ZUSAMMEN SCHREIBEN!!!

 

Ich schlage vor, einen gemeinsamen Berater zu schreiben. Ich denke, es wird mir helfen, viele interessante Fragen zu beantworten (wenn das Projekt abgeschlossen ist), und zweitens werden wir vielleicht einen Gral zusammen machen:) Und schließlich wird es für Anfänger (was ich in Bezug auf die Programmierung denke, dass ich bin) interessant sein, zu lernen, wie man MTS Schritt für Schritt baut. Ich habe die einfachste Strategie als Grundlage genommen... Eröffnen Sie einfach beim Ausbruch aus dem Hoch/Tief des Vortages mit einem festen TP und stoppen Sie beim Hoch/Tief des heutigen Tages. Warum genau? Ja, denn erstens verwendet dieses System keinen Indikator, und zweitens beträgt der Besetzungsfaktor vom Jahr 2000 bis heute 1,00 +/-0,03 (je nach historischen Daten, da diese unterschiedlich sein können), d. h. er ist 50/50, und schließlich denke ich, dass das Durchbrechen des Hochs/Tiefs des Vortags psychologisch wichtig für den Markt ist. Ich schlage vor, andere Schlüsselniveaus zu finden oder Hilfsindizes oder etwas anderes zu verwenden, aber die Hauptsache ist, einen profitableren Expert Advisor als den unten vorgestellten zu erhalten. Dies ist eine Grafik vom 01.01.2009 bis heute, einen ausführlicheren Bericht können Sie selbst erstellen. Der Grundgedanke ist, dass andere Instrumente das System nur unterstützen und nicht auf ihm aufbauen sollten. D.h. wir nehmen ein funktionierendes System als Grundlage und versuchen, es zu erweitern (zu verbessern). Hier ist, was ich bekommen habe...

Dieser TS ist absolut "nackt", aber er hat Potenzial...

Ich empfehle es nicht für Anfänger zu benutzen... Für die nächsten 5 Jahre wird es abfließen ;)

Das Feld wird also nicht gepflügt...

Hier ist der Code

//+-----------------------------------------------------------------------+
//|                                                     Крокодил ГЕНА.mq4 |
//|                                                         Крокодил ГЕНА |
//+-----------------------------------------------------------------------+
// Описание ТС
// 1. Открытие позиций происходит при пробитии High или Low предыдущего дня
//    SL ставиться на High или Low текущего дня, TP выставляется во внешних переменных, 
//    единственная оговорка не более 1 позиции в день в переменной LastTradeTime 
//    если в ней нет необходимост смело сносите /RomanS/
// 2.
// 3.
// 4.
// 5.
 
  // Внешние переменные
  extern double TakeProfit = 900; 
  extern double Lot        = 1;    
  extern string SYMBOL     = "EURUSD";
  
  // Глобальные переменные
  int LastTradeTime = 0;      // Время последней открытой сделки
  
  // Поехали... :)
  int start() 
  {  
     int Ticket;
  double BID,
         ASK,
         SL=0,
         TP=0;                                  
    bool Trade     = true,
         Open_Bay  = false,
         Open_Sell = false;

  // Проверяем можно ли торговать
  if ( Trade==true) 
   {
   
  // Критерии открытия позиций
    if (Bid > iHigh ( SYMBOL,PERIOD_D1,1)) Open_Bay = true; 
    if (Bid < iLow ( SYMBOL,PERIOD_D1,1)) Open_Sell = true;
        
  // Открытие позиций
      if ( Open_Bay == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                           
        {      
         RefreshRates(); 
         Alert("111111111111");
          ASK = MarketInfo( SYMBOL,10);                                
          SL = iLow( SYMBOL,PERIOD_D1,0);
          TP = ASK + TakeProfit*Point;
          if (( ASK- SL)/Point<MarketInfo( SYMBOL,14)) return;  // проверяем минимальный уровень стопов
          Alert("Пробуем открыть Buy ", SYMBOL, " по ", ASK, SL, TP);         
          Ticket=OrderSend( SYMBOL,OP_BUY, Lot, ASK,20, SL, TP);         
           if ( Ticket > 0)                                                  
            {            
             Alert ("Открыт ордер Buy ", Ticket);
             LastTradeTime=TimeDay(TimeCurrent()); // задаем время сделки, чтобы сегодня больше не торговать 
             return;                                                       
            }         
        }
     if ( Open_Sell == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                             
        {      
         RefreshRates();                                             
          BID = MarketInfo( SYMBOL,9);
          SL = iHigh ( SYMBOL,PERIOD_D1,0);
          TP = BID - TakeProfit*Point;
          if (( SL- ASK)/Point<MarketInfo( SYMBOL,14)) return; // проверяем минимальный уровень стопов
          Ticket = OrderSend( SYMBOL,OP_SELL, Lot, BID,20, SL, TP);         
           if ( Ticket > 0)                                                  
             { 
              Alert ("Открыт ордер Sell ", Ticket);
              LastTradeTime=TimeDay(TimeCurrent());  // задаем время сделки, чтобы сегодня больше не торговать
              return;                                   
             }         
          return;                                                       
        }
   
   // Закрытие позиции
   
   // Модификация ордера
   
   }
  return;       
  }



Ich bin kein Profi... Ich bin ein "Amateur", so dass es einfacher ist, damit zu arbeiten. Oder ganz allgemein... ein neues System. Die Hauptsache ist, dass die Bedingung







    if (Bid > iHigh ( SYMBOL,PERIOD_D1,1)) Open_Bay = true; 
    if (Bid < iLow ( SYMBOL,PERIOD_D1,1)) Open_Sell = true;

in diesem Stadium beibehalten wird.

Vielen Dank an alle, die geantwortet haben.

Dateien:
 

Ist der EA in allen Bereichen optimiert, und wie lange halten die optimierten Parameter an?

 
ivandurak >> :

Ist der EA in allen Bereichen optimiert, und wie lange halten die optimierten Parameter?

Welche Art von Optimierung?

>> Hier (in diesem Stadium) können Sie nur den TP optimieren, Sie können natürlich auch die ganze Partie laufen lassen, aber das hat keinen Sinn.

 

Ja, das Feld ist hier nicht nur unbewirtschaftet, es ist jungfräuliches Land, wohin man auch schaut, ein Segen, dass man die Ebenen nach Belieben mit Hoch-Tief und allen Arten von Camarillas und Murrays einstellen kann. Was das High-Low-System angeht, so habe ich es bereits gebaut - ich kann sofort sagen, dass es kein Gral ist, denn ein anständiges System produziert sehr große Drawdowns. Sie werden nicht so groß erscheinen, wenn die Preise für die Aufnahmen vergleichbar sind. Aber für die Panne eines Tages kann man keine lange Aufnahme machen - sie wird einfach nicht funktionieren oder in 6 Monaten funktionieren.

Daher empfehle ich, Ausbruchssysteme zu verwenden, die auf engen Bandbreiten basieren, bei denen der Take größer ist als die Ausbruchsspanne. Das auffälligste Beispiel ist ein Ausbruch aus einem morgendlichen Flat. In diesem Sinne ist sie absolut korrekt.

Wenn wir Tagesbänke nutzen wollen, können wir auf zusätzliche Bezugspunkte in Form von zusätzlichen Ebenen, Werkzeugen und dem Tamburin des Schamanen nicht verzichten.

 
sayfuji >> :

Ja, das Feld ist hier nicht nur unbewirtschaftet, es ist jungfräuliches Land, wohin man auch blickt, ein Segen, dass man den Pegel nach Belieben einstellen kann, sowohl in Hoch-Tief als auch in allen Arten von Camarillas und Murrays. Was das High-Low-System angeht, so habe ich es bereits gebaut - ich kann sofort sagen, dass es kein Gral ist, denn ein anständiges System produziert sehr große Drawdowns. Sie werden nicht so groß erscheinen, wenn man vergleichbare Positionen einnimmt, aber für den Zusammenbruch eines Tages kann man keine Long-Position einnehmen - es wird einfach nicht funktionieren oder in 6 Monaten funktionieren.

Daher empfehle ich, Ausbruchssysteme zu verwenden, die auf engen Bandbreiten basieren, bei denen der Take größer ist als die Ausbruchsspanne. Das auffälligste Beispiel ist ein Ausbruch aus einem morgendlichen Flat. In diesem Sinne ist sie absolut korrekt.

Wenn wir um Tagesbänke tanzen müssen, können wir auf zusätzliche Bezugspunkte in Form von zusätzlichen Ebenen, Werkzeugen und dem Tamburin des Schamanen nicht verzichten.

Ersetzen im Expert Advisor

RERIOD_D1 bis RERIOD_H4, vielleicht ist das Ergebnis dann besser.

Um ehrlich zu sein, habe ich mit dieser MTS noch nichts ausprobiert... Ich habe es nur aus Interesse getan...

Wie ich schon im vorigen Thread sagte, schreiben die Forumsteilnehmer im Forum des berühmten "A" DC seit einem Jahr zusammen...

Wir sollten uns auch etwas einfallen lassen... Wir haben mehr Programmierpotenzial...

 
RomanS писал(а) >>

Welche Art von Optimierung?

Hier kann (zum jetzigen Zeitpunkt) nur der T.Pro optimiert werden, natürlich kann man auch das ganze Paket laufen lassen, aber es hat keinen Sinn

Ich beziehe mich auf den virtuellen Handel. Die besten Parameter werden für den realen Handel ausgewählt. Wenn wir zwei EAs in einem Code schreiben, von denen einer bei einem Zusammenbruch und der andere bei einem Aufschwung arbeitet, wird derjenige besser gehandelt.

 

Jetzt kann ich schon die Fehler in unserer MTS sehen

Ich wollte, dass es für alle Währungspaare funktioniert, aber es funktionierte nur für EURUSD

Ich werde es jetzt korrigieren...

-----------------------------------------------+
//|                                                     Крокодил ГЕНА.mq4 |
//|                                                         Крокодил ГЕНА |
//+-----------------------------------------------------------------------+
// Описание ТС
// 1. Открытие позиций происходит при пробитии High или Low предыдущего дня
//    SL ставиться на High или Low текущего дня, TP выставляется во внешних переменных, 
//    единственная оговорка не более 1 позиции в день в переменной LastTradeTime 
//    если в ней нет необходимост смело сносите /RomanS/
// 2.
// 3.
// 4.
// 5.
 
  // Внешние переменные
  extern double TakeProfit = 900; 
  extern double Lot        = 1;    
  extern string SYMBOL     = "EURUSD";
  
  // Глобальные переменные
  int LastTradeTime = 0;      // Время последней открытой сделки
  
  // Поехали... :)
  int start() 
  {  
     int Ticket;
  double BID,
         ASK,
         SL=0,
         TP=0;                                  
    bool Trade     = true,
         Open_Bay  = false,
         Open_Sell = false;

  // Проверяем можно ли торговать
  if ( Trade==true) 
   {
   
   ASK = MarketInfo( SYMBOL,10);
   BID = MarketInfo( SYMBOL,9);
  
  // Критерии открытия позиций
    if ( BID > iHigh ( SYMBOL,PERIOD_D1,1)) Open_Bay = true; 
    if ( BID < iLow ( SYMBOL,PERIOD_D1,1)) Open_Sell = true;
        
  // Открытие позиций
      if ( Open_Bay == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                           
        {      
         RefreshRates(); 
          SL = iLow( SYMBOL,PERIOD_D1,0);
          TP = ASK + TakeProfit*Point;
          if (( ASK- SL)/Point<MarketInfo( SYMBOL,14)) return;  // проверяем минимальный уровень стопов
          Alert("Пробуем открыть Buy ", SYMBOL, " по ", ASK, SL, TP);         
          Ticket=OrderSend( SYMBOL,OP_BUY, Lot, ASK,20, SL, TP);         
           if ( Ticket > 0)                                                  
            {            
             Alert ("Открыт ордер Buy ", Ticket);
             LastTradeTime=TimeDay(TimeCurrent()); // задаем время сделки, чтобы сегодня больше не торговать 
             return;                                                       
            }         
        }
     if ( Open_Sell == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                             
        {      
         RefreshRates();                                             
          SL = iHigh ( SYMBOL,PERIOD_D1,0);
          TP = BID - TakeProfit*Point;
          if (( SL- ASK)/Point<MarketInfo( SYMBOL,14)) return; // проверяем минимальный уровень стопов
          Ticket = OrderSend( SYMBOL,OP_SELL, Lot, BID,20, SL, TP);         
           if ( Ticket > 0)                                                  
             { 
              Alert ("Открыт ордер Sell ", Ticket);
              LastTradeTime=TimeDay(TimeCurrent());  // задаем время сделки, чтобы сегодня больше не торговать
              return;                                   
             }         
          return;                                                       
        }
   
   // Закрытие позиции
   
   // Модификация ордера
   
   }
  return;       
  }
Dateien:
 
sayfuji >> :

Wenn du um den Tag tanzen willst, brauchst du zusätzliche Unterstützung in Form von mehr Levels, Gimmicks und einem Schamanentamburin.

Champagner und Tamburin müssen also zusammenpassen...

Alleine ist die Chance geringer, man muss kommunizieren, dafür ist das Forum da...

 

Guten Tag, RomanS.

Das ist eine großartige Idee. Ich sehe sehr oft, dass sich Händler in ausländischen Foren zusammenschließen und durch gemeinsame Anstrengungen einen Experten schaffen. Ich bin bereit, sie zu unterstützen.

Was Ihre Idee anbelangt, so ist sie eine sinkende Idee. Und es ist kein Gral. Wenn wir arbeiten wollen, dann sollten wir ernsthaft arbeiten und hoffen, dass wir sonst mit all dem nicht anfangen. Meine Meinung: Sie müssen das System nur für M1 EUR/USD aufbauen. Der Algorithmus sollte sich auf die Art der Trenderkennung stützen. Nehmen wir zum Beispiel ....mm..... gleitenden Durchschnitt mit dem Glättungsalgorithmus von Tilson. Dann definieren wir den Eintrag. Wir können die Kreuzung von zwei schnellen Stäben nehmen und sie zum Schließen verwenden. Es gibt viele weitere "Extras", die hinzugefügt werden könnten. Schlagen Sie sie vor :-). Außerdem sollte es ein MM mit der Möglichkeit geben, Martin mit eigenen Einstellungen einzubinden.

Generell gilt: Tanzen wir von hier aus. Geben Sie Ihre Ideen für Input/Output ein. Lassen Sie es uns gemeinsam tun. Aber das Durchbrechen der hohen und niedrigen Niveaus auf D1 ist ein Misserfolg. sayfuji hat es richtig gemacht.

 

Warum schreibt ein Zweig, https://forum.mql4.com/ru/ 23917, nicht?

Normalerweise schließen sich die Menschen um eine interessante Idee herum zusammen, aber dies ist eine Krise des Genres...

 
Alex5757000 >> :

Guten Tag, RomanS.

Das ist eine großartige Idee. Ich sehe sehr oft, dass sich Händler in ausländischen Foren zusammenschließen und durch gemeinsame Anstrengungen einen Experten schaffen. Ich bin bereit, sie zu unterstützen.

Was Ihre Idee anbelangt, so ist sie eine sinkende Idee. Und es ist kein Gral. Wenn wir arbeiten wollen, dann sollten wir ernsthaft arbeiten und hoffen, dass wir sonst mit all dem nicht anfangen. Meine Meinung: Sie müssen das System nur für M1 EUR/USD aufbauen. Der Algorithmus sollte sich auf die Art der Trenderkennung stützen. Nehmen wir zum Beispiel ....mm..... gleitenden Durchschnitt mit dem Glättungsalgorithmus von Tilson. Dann definieren wir den Eintrag. Wir können die Kreuzung von zwei schnellen Stäben nehmen und sie zum Schließen verwenden. Es gibt viele weitere "Extras", die hinzugefügt werden könnten. Schlagen Sie sie vor :-). Außerdem brauchen wir ein MM mit der Möglichkeit, Martin mit benutzerdefinierten Einstellungen einzubinden.

Wie auch immer, lassen Sie uns darum herumtanzen. Entwickeln Sie Ihre Ideen für den Input/Output. Lassen Sie es uns gemeinsam tun. Aber das Durchbrechen der hohen und niedrigen Niveaus auf D1 ist ein Misserfolg. sayfuji schrieb es richtig.

Die Tatsache, dass es bis jetzt kein Gral ist (die Zeit wird es zeigen), ist sicher!

Die Tatsache, dass es nicht Pflaume ist (auf lange Sicht), ist es sichtbar, wenn Sie es in den Tester (50/50 manchmal funktioniert, manchmal nicht), aber nicht Pflaume... Der Prof.faktor beträgt etwa 1,00

Was M1 betrifft, so ist es natürlich interessant, aber es ist unwahrscheinlich, dass es einen Profi interessieren wird... Außerdem habe ich das System nicht für den täglichen Handel vorgeschlagen... Ich habe es auf M5 getestet, es macht im Allgemeinen keinen Unterschied.

Ich habe es auf M5 getestet und es macht keinen Unterschied.

Den Algorithmus auf eine Art und Weise zu gründen, die einen Trend identifiziert

Sie haben eine Möglichkeit vorgeschlagen, den Trend zu bestimmen, also tun Sie es.... Wo liegt das Problem? Wir diskutieren...

Nehmen wir zum Beispiel ....mm..... einen gleitenden Durchschnitt mit einem Tilson-Glättungsalgorithmus.

Kein Problem... kann man ein paar Zeilen Code einfügen und schwupps... Der Prof-Faktor liegt über 2,0.

Das ist die Sache, ich schlage nicht vor, dass man raten soll, sondern dass man es tut, und diejenigen, die nicht wissen, wie man es tut, sollten lernen, wie es andere tun.

Ich persönlich möchte (als Amateur) Erfahrungen von den Profis sammeln...