Morseschrift

 

Die Essenz des EA besteht darin, bestimmte Kombinationen von Kerzen zu setzen. Die Regeln lauten: eine bullische Kerze bedeutet "1", eine bärische Kerze bedeutet "0". Es ist also möglich, nach solchen Kombinationen von Leuchtern zu suchen, indem man einfach "101" angibt:

Morsezeichen

Bisher liegt das Problem in der Codierung der Darstellung von Kombinationen - man kann in den Eingabeparametern keine Zahl in binärer Form angeben.

Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests

Morseschrift

Wladimir Karputow, 2017.04.06 10:25

Bisherige Morsecode-Version "1.003": Sie können manuell eine String-Beschreibung eines Musters einstellen und sogar einzelne Durchläufe im Tester durchführen.

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Morseschrift

Wladimir Karputow, 2017.04.07 08:42

Morsecode Version "1.005"

...

Zwei Probleme wurden gelöst:

1). Der Benutzer sieht das Muster als "0101" in den Eingabeparametern:

Bequeme Ansicht der Eingabe-Parameter

2). Der Eingangsparameter ist im Tester perfekt optimiert.



 
Vladimir Karputov:

Die Essenz des EA besteht darin, bestimmte Kombinationen von Kerzen zu setzen. Die Regeln lauten: eine bullische Kerze bedeutet "1", eine bärische Kerze bedeutet "0". Es ist also möglich, nach solchen Kombinationen von Leuchtern zu suchen, indem man einfach "101" angibt:

Das Problem liegt in der Codierung der Darstellung von Kombinationen - in den Eingabeparametern können wir die Zahl nicht in binärer Form angeben.


können Sie einen Text eingeben und dann den String analysieren....
 

(Das ist cool).

In den Eingabeparametern können Sie Zahlen in dezimaler Form angeben. Und es kann auch in Binärzeichen umgewandelt oder bereits als eine Folge von Binärzeichen verwendet werden, indem jedes Bit einzeln herausgezogen wird. So einfach ist das)).


 
Vladimir Pastushak:

Sie können den String.... mit Text versehen und dann entkoppeln.

Als Entwurf habe ich dies getan und zusätzlich alle möglichen Prüfungen durchgeführt - für die Länge der Zeichenfolge und um sicherzustellen, dass nur die Zeichen "0" und "1" in der Zeichenfolge enthalten sind. Aber es gibt ein neues Problem: eine solche Zeichenkette kann im Tester nicht im Optimierungsmodus ausgeführt werden :).
 
Aliaksandr Hryshyn:

(Das ist cool).

In den Eingabeparametern können Sie Zahlen in dezimaler Form angeben. Und es kann auch in Binärzeichen umgewandelt oder bereits als eine Folge von Binärzeichen verwendet werden, indem jedes Bit einzeln herausgezogen wird. Es ist ganz einfach)).



Es ist möglich, ihn als binären Parameter zu setzen, aber es ist nicht möglich, ihn als binäre Darstellung in den Eingabeparametern darzustellen:

Forum zum Thema Handel, automatische Handelssysteme und Strategietests

Eingabeparameter in binärer Form

Wladimir Karputow, 2017.04.05 09:24

Beispiel aus der Hilfechar, short, int und long Typen:

... Für ganzzahlige Variablen können Werte in binärer Form unter Verwendung des Präfixes B angegeben werden. Sie können zum Beispiel die Arbeitsstunden einer Handelssitzung in einer Variablen vom Typ int kodieren und die Informationen darüber entsprechend dem gewünschten Algorithmus verwenden:

//--- для рабочих часов ставим 1, для нерабочих указываем 0 
   int AsianSession   =B'111111111'; // азиатская сессия с 0:00 часов до 9:00 
   int EuropeanSession=B'111111111000000000'; // европейская сессия  9:00 - 18:00 
   int AmericanSession =B'111111110000000000000011'; // американская 16:00 - 02:00 


Aber die Angabe des Eingabeparameters in binärer Form (genau in der Form111111111000000000)

//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                                      Copyright 2017, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
#property script_show_inputs
//--- для рабочих часов ставим 1, для нерабочих указываем 0 
input int AsianSession=B'111111111'; // азиатская сессия с 0:00 часов до 9:00 
input int EuropeanSession=B'111111111000000000'; // европейская сессия  9:00 - 18:00 
input int AmericanSession=B'111111110000000000000011'; // американская 16:00 - 02:00 
//---
string text="10";
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart()
  {
//---

  }
//+------------------------------------------------------------------+

funktioniert nicht - in den Eingabeparametern wird die binäre Darstellung der Zahl in eine normale Zahl umgewandelt:

Eingabeparameter


Frage: Gibt es eine Möglichkeit, Werte in Eingabeparametern genau in einer binären Form zu setzen (so dass ein Benutzer keine Zahl, sondern nur eine binäre Darstellung, wie1111111111111000000000, sehen würde)?


 
Die Situation scheint nicht sehr zuverlässig für eine Close == Open Kerze
Und die Option -1 0 1 wird vorgeschlagen
Wobei 0 für jede Richtung geeignet ist
 
Vladimir Karputov:

Ich habe es auf diese Weise als Entwurf gemacht und zusätzlich alle möglichen Prüfungen durchgeführt - für die Länge der Zeichenfolge und um sicherzustellen, dass nur die Zeichen '0' und '1' in der Zeichenfolge enthalten sind. Aber es gibt ein neues Problem: eine solche Zeichenkette kann nicht im Tester im Optimierungsmodus ausgeführt werden :).


Eingabeparameter als int-Typ festlegen und dann int-Typ in String ändern und parsen ....

 
Sergey Dzyublik:
Die Situation scheint nicht sehr zuverlässig für eine Close == Open Kerze
Und die Option -1 0 1 wird vorgeschlagen
Wobei 0 für jede Richtung gut ist

Die Variante Close == Open habe ich als unzuverlässig verworfen -> eine solche Kerze hat keine Richtung.
 
Welche INT?
Es geht nur über Strings oder Arrays.
 
Vladimir Karputov:

Sie können ihn als Parameter in binärer Form setzen, aber Sie können ihn nicht in Eingabeparametern in binärer Form darstellen:


Ich habe geschrieben, dass man sie in dezimaler Form, als gewöhnliche ganze Zahl, setzen und dann einzelne Bits daraus ziehen kann.
 
Vladimir Karputov:

Ich habe die Option "Close == Open" als unzuverlässig verworfen -> eine solche Kerze hat keine Richtung.

Nun, dann müssen wir alle Varianten durch die Flüssigkeitskarte betrachten.
Weil derjenige, der rausgeworfen wurde, eine vollwertige Richtung bei -30 Sekunden Zeitrahmen geben könnte
Grund der Beschwerde: