モールス符号 - ページ 3

 

2つのパラメータを作る。1つは人間用の文字列、もう1つは機械用のint。3つ目の変数は、タイプ選択用です。いずれにせよ、インジケータが起動したら、組み合わせのコーディングの第2候補を印刷する。consequenceが100に設定されている場合、追加の情報を表示する - 何から何まで、パラメータintを変更することができます。

始値と終値が等しいローソク足は、最も近い始値と終値が等しくないローソク足の方向性を持っていると考えることができます。一つのローソク足が0~の3つの数字でコード化されていると、始値と終値が等しくなるため、レアな配列が多くなりすぎてしまうのです。

 

オプティマイザーの実行には、組み合わせの長さとカウンターの2つのパラメータが必要です。仮に組み合わせの長さを4とすると、2^4=16となります。カウンタが0から15になるようにという意味です。それをオプティマイザーで調べていくと、4桁のパターンの組み合わせがすべて出てきます。

ユーザーを混乱させないために、ENUM_PATTERN_TYPE構造体を追加する必要があります。これは、パターンタイプ:数値または文字列を定義します。文字列パターンを選択した場合、カウンタと 組み合わせの長さは使用しないでください。また、その逆で、オプティマイザーで実行する場合は、数値パターンタイプを選択します。

 

こんなの見たことある。Yandexで "candlecode "で検索すると出てくる。

 
Vasiliy Sokolov:

オプティマイザーの実行には、組み合わせの長さとカウンターの2つのパラメータが必要です。仮に組み合わせの長さを4とすると、2^4=16となります。カウンタが0から15になるようにという意味です。それをオプティマイザーで調べていくと、4桁のパターンの組み合わせがすべて出てきます。

ユーザーを混乱させないために、ENUM_PATTERN_TYPE構造体を追加し、パターンタイプ:数値または文字列を設定する必要があります。文字列パターンを選択した場合、カウンタと 組み合わせの長さは使用しないでください。また、その逆で、オプティマイザーで実行する場合は、数値パターンタイプを選択する。


ENUM_PATTERN_TYPE構造体を追加しましたが、一方で、ローソク足の組み合わせのタイプを定義する「int」型パラメータは、ユーザーから隠蔽することを提案します。

  • int "型は数値であり、文字列パラメータのバイナリ型とは一切関係ありません。
  • int "型は最適化時にのみ必要です。

が、これらのパラメータだけを残す。

CTrade         m_trade;                      // trading object
//+------------------------------------------------------------------+
//| Enum pattern type: numerical or string                           |
//+------------------------------------------------------------------+
enum ENUM_PATTERN_TYPE
  {
   PATTERN_TYPE_NUMERICAL=0,  // numerical
   PATTERN_TYPE_STRING=1,     // string 
  };
//---
input ENUM_PATTERN_TYPE    InpPatternType          = PATTERN_TYPE_STRING;  // pattern type
input string               InpsMorseCode           = "101";                // string Morse code (max 5 characters)
input ENUM_POSITION_TYPE   InpPosType              = POSITION_TYPE_BUY;    // posinion type
input double               InpLot                  = 0.1;                  // lot
sinput ulong               m_magic                 = 88430400;             // magic number
input ulong                m_slippage              = 30;                   // slippage
//---
string sExtMorseCode="";
int max_string_len=5;         // limitation of the length of the pattern "string"
int i_morse_code=0;           // int Morse code (use only if pattern type=numerical)
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(InpPatternType==PATTERN_TYPE_STRING)
     {

入力 モールス符号 1.002

 

プログラマーなのか、カモなのか、よくわからない。

なぜ、何かを何かに翻訳する必要があるのでしょうか?

コード101が必要な場合 - それは通常の値である5です。それだ、何が問題なんだ?10進数から2進数への精神的な変換を行う?

同じような実験をしたのですが、私のキャンドルは、小さいものから大きいものまで4つのサイズがありました。そのため、キャンドルの大きさは8種類になります。そして、結果的に3ビットになる。パターンには数字(ulong)を書き、グリッドは20バーパターンよりも大きくなっている。

この問題は、私に言わせれば、遠回しに言っているのです。

 
George Merts:

プログラマーなのか、カモなのか、よくわからない。

なぜ、何かを何かに翻訳するのか?

コード101が必要な場合 - それは通常の値である5です。それだ、何が問題なんだ?10進数から2進数への精神的な変換を行う?

同じような実験をしたのですが、私のキャンドルは、小さいものから大きいものまで4つのサイズがありました。そのため、キャンドルの大きさは8種類になります。そして、結果的に3ビットになる。パターンには数字(ulong)を書き、グリッドは20バーパターンよりも大きくなっている。

この問題は、私に言わせれば、遠回しに言っているのです。


通常のユーザーは、精神的に10進数から2進数への変換ができない :)
 
George Merts:

プログラマーなのか、カモなのか、よくわからない。

なぜ、何かを何かに翻訳するのか?

コード101が必要な場合 - それは通常の値である5です。それだ、何が問題なんだ?10進数から2進数への精神的な変換を行う?

同じような実験をしたのですが、私のキャンドルは、小さいものから大きいものまで4つのサイズがありました。そのため、キャンドルの大きさは8種類になります。そして、結果的に3ビットになる。パターンには数字(ulong)を書き、グリッドは20バーパターンよりも大きくなっている。

この問題は、私に言わせれば、遠回しに言っているのです。


このプログラムはプログラマーではなく、普通のユーザーによって使われるでしょう(それは既に上述した通り、何度も言われています)。そして、彼にとって「101」と「5」は二つの異なる数字であり、一方「5」にはローソクの相対位置に関する情報は含まれていませんが、「101」は明らかに「強気、弱気、強気」と書いてあります。

 

ドッジのコーディングは?

例えば、「イブニングスター」パターンは、強気-ドッジ(またはウルフまたはピンバー)-ベアとなります。ドッジ(ウルフやピンバー)を無視すると、パターンが正しく認識されません。1本のロウソクをコーディングするのに1ビットでは足りず、1本のロウソクに2ビットになると思います。

例えば、強気ローソク足が01、弱気ローソク足が10、その他のローソク足が11となります。そうすると、「宵の明星」は01 11 10、「朝の明星」は10 11 01となる。

....

という思いもありました。テイクオーバーパターンはどのようにコーディングするのですか?単純な強気-弱気の組み合わせでは何もわからないが、強気-大弱気の組み合わせは、すでに強気-弱気の買収を物語っている。あるいは、この2本のローソク足を合計してピンバーを出し、この合計されたローソク足を11とコード化することもできます。


 
Vitalii Ananev:

ドッジのコーディングは?

例えば、「イブニングスター」パターンは、強気-ドッジ(またはウルフまたはピンバー)-ベアとなります。ドッジ(ウルフやピンバー)を無視すると、パターンが正しく認識されません。1本のロウソクをコーディングするのに1ビットでは足りず、1本のロウソクに2ビットになると思います。

例えば、強気ローソク足が01、弱気ローソク足が10、その他のローソク足が11となります。そして、「宵の明星」は01 11 10、「朝の明星」は10 11 01となる。


影は一切コード化されていません(少なくとも現段階では)。たぶん、後で・・・。
 
Vladimir Karputov:

影は一切コード化されていません(少なくとも現段階では)。おそらく後で...。


後でやり直さないためにも、何事も一度に検討すべきなのです。

....

再び「宵の明星」のパターンに戻ると、強気-小ローソク足-弱気、強気-弱気の取り合いと見ることができる。強気のローソク足と弱気の吸収からなる複合パターンを持っていることを意味します。そして、このパターンから3本のローソク足をすべて合計すると、再びピンバーとなる。