市場のエチケット、あるいは地雷原でのマナー - ページ 24

 
Neutron писал(а)>>

それが真実だ!ただ、騒がないでくださいね。スープは別腹です。

バーについては、私は始値のみを使用し、平均化はしていません。そして、賢明なプライヴァルがすること、それはティックに切り替えることです。ただし、保存モードとデータ収集には手こずることになりそうです。でも、それだけの価値があるのなら、いいじゃないですか。

...そして、このNSの騒動は、単なるダフ屋に流れてしまわないか。ティックレベルで、例えば1時間足のトレンドがつかめるとは到底思えません。もちろん、ダニの数にもよるけれども...。でも、計算機には限りがありますから......。

 
YDzh >> :

騒いでいるわけではありません :)チックの有用性は文献でも認識されています...カオス理論の香りがする...。価値があるかどうかについては...その価値はあるのか?そして、プライバルの助言はどこにあるのでしょうか?

こちらでご確認ください。

 
YDzh >> :

...とか、NSで騒いでいたのが、単なるスキャルパーになるのかとか。ティックレベルで、例えば1時間足のトレンドがつかめるとは到底思えません。もちろん、ダニの数にもよるけれども...。でも、計算機には限りがありますから......。

まあ、飛行機は飛んだんですけどね...。を1回だけ。そして、どれほどの懐疑心があったことか...。

 
YDzh писал(а)>>

...とか、NSで騒いでいたのが、単なるスキャルパーになるのかとか。ティックレベルで、例えば1時間足のトレンドがつかめるとは到底思えません。もちろん、ダニの数にもよるけれども...。でも、計算機には限りがありますから......。

アプローチの仕方が問題なのですが...。5~10分以上前のティックに目を通す必要はなく、分析に十分なバーがあり、直近1分間のバーのティックを記憶して計算することができます。しかも、そんな大容量は必要ない。

 
FION >> :

ここでは、そのアプローチ方法について...5-10分以上前のティックを見る必要はなく、分析に十分なバーがあり、直近の1分足のティックを記憶し計算することができる。そして、そんな大容量は必要ないでしょう。

MT4のデータ表現形式には、以前から不満がありました。タイムフレームは、相場が始まった当初から目をつけていたものです。つまり、MT4のタイムフレームを見ると、「これには理由があるんだ!」とすぐに理解できるのです。いわば、利便性を追求したデザイン...。-:)

だから、グリッドを理解したら、タイムフレームはインデックスの後を追うことになるんだ〜。 実際、私はこのターミナルからクォートとトレーディングインターフェイスだけを必要としています。残りは、預金に害を与えることなく廃棄することができます。

 
paralocus писал(а)>>

MT4のデータフォーマットには以前から不満があった。タイムフレームは、発売当初から私の目に留まりました。つまり、MT4のタイムフレームを見ると、「これには理由があるんだ!」とすぐに理解できるのです。いわば、利便性を追求したデザイン...。-:)

ですから、グリッドを理解したら、タイムフレームはインデックスの後を追うことになります。実際、私はターミナルからクォートとトレーディングインターフェイスだけを必要としています。残りのものは、預金に害を与えることなく簡単に捨てることができます。

それなら、面倒がらずに、既製のグリッドを使えばいい。なぜ、MQL4で頭を悩ませて、車輪を再発明しなければならないのか...。

 
YDzh >> :

だから、面倒くさがらずに、既製のグリッドを手に入れましょう。たとえば、Javaで書かれたものがたくさんあります。なぜわざわざMQL4で車輪の再発明をするのか...。

ただ、知るために。

 
YDzh писал(а)>>

だから、面倒くさがらずに、既製のグリッドを手に入れましょう。たとえば、Javaで書かれたものがたくさんあります。なぜわざわざMQL4で車輪の再発明をするのか...。

冗談でしょう!?- なんで他人のブループを解析してるんだろう。私のアルゴリズムはより最適化されており、ある戦術的な目的のためにカスタマイズされているのです)。

paralocus さんが書き込みました

まあ、目盛りが修正されるまでは、これでいいんでしょうけど。

for(int i = cikl; i >= 0; i--)
{
out = OUT2(i);---------------------------------------------------// Получаем вых. сигнал сетки
test = (Close[i]-Close[i+1])/Close[i+1];--------------------------// Получаем n+1-вый отсчет

d_2_out = test - out;---------------------------------------------// Ошибка на выходе сетки
d_2_in = d_2_out * (1 - out*out);--------------------------------// Ошибка на входе выходного нейрона

Correction2[0] += d_2_in * D2[0];---------------------------// Суммируем микрокоррекции
SquareCorrection2[0] += Correction2[0] * Correction2[0];----------// по каждому весу входящему в вых. нейрон
Correction2[1] += d_2_in * D2[1];---------------------------// и суммируем квадраты оных микрокоррекций
SquareCorrection2[1] += Correction2[1] * Correction2[1];
Correction2[2] += d_2_in * D2[2];
SquareCorrection2[2] += Correction2[2] * Correction2[2];

d_11_in = d_2_in * (1 - D2[1]*D2[1]);-----------------------------// Считаем ошибку на входах нейронов
d_12_in = d_2_in * (1 - D2[2]*D2[2]);-----------------------------// скрытого слоя

for (int k = 0; k < 17; k++)
{---------------------------------------------------------------// Сууммируем микрокоррекции для входов
Correction11[k] += d_11_in * D1[k];----------------------// первого нейрона
SquareCorrection11[k] += Correction11[k] * Correction11[k];
}

for (k = 0; k < 17; k++)
{---------------------------------------------------------------// Суммируем микрокоррекции для входов
Correction12[k] += d_12_in * D1[k];----------------------// второго нейрона
SquareCorrection12[k] += Correction12[k] * Correction12[k];
}
}
パラロカス 、今度は各重量の二乗の和の平方根をとり、この割合で各総重量補正で割ります。それが、各重量に加算されるのですそれがひとつのエポックです。これをトレーニングエポックを計画した回数だけ繰り返す。学習終了までに、各エポックの多重寄与を徐々にゼロにする。
 

皆さん、浅い局地的な低気圧や湾曲した初期重心に飛び込む場合、どのように対処しているのか教えてください。最初のうちはトレーニングに影響しないが、後半になると結果に大きく影響し始めるというのは理解できる。

 
Neutron >> :
...ここで、各重量の二乗和の平方根を取り、このノルムで割ると、各総重量補正が行われます。それが、各重量に加算されるのですそれがひとつのエポックです。これをトレーニングエポックを計画した回数だけ繰り返す。学習終了までに、各エポックの多重寄与を徐々にゼロにする。

完了しました。

for(int q = 1; q <= 1000; q++)
  {
// ----------------------------------------- ЭПОХА ---------------------------------------------------  
   for(int i = cikl; i >= 0; i--)
     {
       out  = OUT2( i);                                                   // Получаем вых. сигнал сетки
       test = (Close[ i]-Close[ i+1])/Close[ i+1];                          // Получаем n+1-вый отсчет
       
       d_2_out = test - out;                                             // Ошибка на выходе сетки         
       d_2_in  = d_2_out * (1 - out* out);                                // Ошибка на входе выходного нейрона
       
       Correction2[0]       += d_2_in * D2[0];                           // Суммируем микрокоррекции
       SquareCorrection2[0] += Correction2[0] * Correction2[0];          // по каждому весу входящему в вых. нейрон
       Correction2[1]       += d_2_in * D2[1];                           // и суммируем квадраты оных микрокоррекций
       SquareCorrection2[1] += Correction2[1] * Correction2[1];     
       Correction2[2]       += d_2_in * D2[2];
       SquareCorrection2[2] += Correction2[2] * Correction2[2];   
       
       d_11_in = d_2_in * (1 - D2[1]* D2[1]);                             // Считаем ошибку на входах нейронов
       d_12_in = d_2_in * (1 - D2[2]* D2[2]);                             // скрытого слоя
       
       for (int k = 0; k < 17; k++)
         {                                                               // Сууммируем микрокоррекции для входов
          Correction11[ k]       += d_11_in * D1[ k];                      // первого нейрона
          SquareCorrection11[ k] += Correction11[ k] * Correction11[ k];  
         }                                    
         
       for ( k = 0; k < 17; k++)
         {                                                               // Суммируем микрокоррекции для входов
          Correction12[ k]       += d_12_in * D1[ k];                      // второго нейрона
          SquareCorrection12[ k] += Correction12[ k] * Correction12[ k];
         }   
     }
// ------------------------------------- КОНЕЦ ЭПОХИ --------------------------------------------------

// ----------------------------------- КОРРЕКЦИЯ ВЕСОВ ------------------------------------------------
         for( k = 0; k < 3; k++)
             W2[ k] += Correction2[ k]/MathSqrt( SquareCorrection2[ k]);  

         for( k = 0; k < 17; k++ )
           {
             W1[0, k] += Correction11[ k]/MathSqrt( SquareCorrection11[ k]);
             W1[1, k] += Correction12[ k]/MathSqrt( SquareCorrection12[ k]);
           }        

   }                                 


エポックの貢献度倍率を下げる方法が少しわからないのですが...。 学習終了時に出力層の重みが非常に小さくなり、隠れ層の重みが大きくなるのですが。

アラート:W2 [0] = -0.0414 W2 [1] = 0.0188 W2 [2] = -0.0539

アラート: W1[1,0]=-27.0731 W1[1,1]=-30.2069 W1[1,2]=37.6292 W1[1,3]=30.4359 W1[1,4]=-22.7556 W1[1,5]=-37.5899