English Русский 中文 Español Deutsch Português 한국어 Français Italiano Türkçe
計量経済学によるユーロ/ドル ワン ステップ アヘッド フォーキャスト

計量経済学によるユーロ/ドル ワン ステップ アヘッド フォーキャスト

MetaTrader 4トレーディングシステム | 21 12月 2015, 15:27
591 0
СанСаныч Фоменко
СанСаныч Фоменко

はじめに

本稿は、EViewsソフトウェアを使用した、ユーロ/ドル 通貨ペアのワン・ステップ・アヘッド・フォーキャスト(一段先の予測)と、EViewsのプログラムとMQL4で開発されたエキスパートアドバイザーを使用した予測結果の検証について書かれています。記事"インディケータの統計パラメータ分析"に基づいて構成しました。新たな説明は付け加えていません。


1. モデル構築

前回記事は、以下の回帰方程式の分析で終了していました。

EURUSD = C(1)*EURUSD_HP(1) + C(2)*D(EURUSD_HP(1)) + C(3)*D(EURUSD_HP(2))

この式は、初期終値クォート(相場、時価の意)の分解を実行した結果でした。考え方の背景は、初期クォートからの決定性構成要素の分解と、結果誤差の分析に基づくものです。

2011年9月12日から、2011年9月17日の1週間で、ユーロ/ドル1時間足バーでモデルを構築していきましょう。


1.1. 初期ユーロ/ドルクォートの分析

次のステップを計画できるよう、初期ユーロ/ドルシリーズの分析からはじめます。

最初に、EViewsでのさらなる分析のため、クォートを含むファイルを生成しましょう。そのためには、クォートを含むファイルを生成するためにチャート上に重ねたインディケーターを利用します。

インディケーターのスクリプトは以下の通りです。コメントの必要はないでしょう。

//+------------------------------------------------------------------+
//|                                                   Kotir_Out.mq4  |
//|   EViewsのためのクォート出力インディケーター                          |
//|   Version of 29.08.2011                                          |
//+------------------------------------------------------------------+
//--- メインウィンドウ用インディケーター
#property indicator_chart_window
//--- 表示インディケーターバッファ数
#property indicator_buffers            1
//--- インディケーター色の設定
#property indicator_color1             Red      // フォーキャスト      
//--- ライン幅の設定
#property indicator_width1             2
//--- 外部パラメーター
extern   int      Number_Bars=100;     // バーの数
extern   string   DateTime_begin    =  "2011.01.01 00:00";
extern   string   DateTime_end      =  "2011.01.01 00:00";
//--- グローバル変数
//--- バッファ宣言
double   Quotes[];         // クォート 非表示
int      Quotes_handle;    // クォート・ファイルへのポインタ
int      i;                // サイクルカウント
//--- EViews交換のためのファイル名
string   fileQuotes;       // クォートファイル名
//+------------------------------------------------------------------+
//|インディケーター初期化関数                                        |
//+------------------------------------------------------------------+
int init()
  {
//--- インディケーターバッファ数
   IndicatorBuffers(1);
//--- パラメーター描画設定
   SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,0);
   SetIndexDrawBegin(0,Number_Bars);

//--- インディケーター番号を名前にバインド
   SetIndexBuffer(0,Quotes);  // インデックス・バッファ

//--- 初期バッファ値
   SetIndexEmptyValue(0,0.0);
//--- インディケーター名
   IndicatorShortName("フォーキャスト");
//--- EViews交換のためのファイル名生成
   fileQuotes="kotir.txt";   // クォートファイル名
   int       N_bars_begin   =  0;
   int       N_bars_end     =  0;

   datetime  var_DT_begin   =  0;
   datetime  var_DT_end     =  0;
   bool      exact          =  false;
//---
//--- EViewsオペレーションで使用するクォートファイル生成
   Quotes_handle=FileOpen(fileQuotes,FILE_CSV|FILE_WRITE,',');
//--- 異常終了
   if(Quotes_handle<1)
     {
      Print("ファイルの生成に失敗しました。",fileQuotes," エラー #",GetLastError());
      return(0);
     }
   FileWrite(Quotes_handle,"DATE","kotir");  // ヘッダー
//---    
//--- エクスポートに使用するバー数を計算
   var_DT_begin =  StrToTime(DateTime_begin);
   var_DT_end   =  StrToTime(DateTime_end);

   if(var_DT_begin!=var_DT_end)
     {
      N_bars_begin=iBarShift(NULL,Period(),var_DT_begin,exact);
      N_bars_end=iBarShift(NULL,Period(),var_DT_end,exact);
      Number_Bars=N_bars_begin-N_bars_end;

      Print("Number_Bars = ",Number_Bars,
            ", N_bars_end = ",N_bars_end,
            ", N_bars_begin = ",N_bars_begin);

      for(i=N_bars_begin; i>=N_bars_end; i--)
        {
         FileWrite(Quotes_handle,
                   TimeToStr(iTime(Symbol(),Period(),i)),
                   iOpen(Symbol(),Period(),i));
        }
     }
   else
     {
      for(i=Number_Bars-1; i>=0; i--)
        {
         FileWrite(Quotes_handle,
                   TimeToStr(iTime(Symbol(),Period(),i)),
                   iOpen(Symbol(),Period(),i));
        }
     }
// --- クォート書き込み
   FileWrite(Quotes_handle, "フォーキャスト", 0);   // 予測エリア
   FileClose(Quotes_handle);                  // クォート・ファイルをクローズ
   Comment("クォート・ファイルを生成しました。バーの本数 =",Number_Bars+1);
//--- Init() セクションおわり
   return(0);
  }
//+------------------------------------------------------------------+
//| インディケーターstart関数                                          |
//+------------------------------------------------------------------+
int start()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| カスタムインディケーター非初期化関数                               |
//+------------------------------------------------------------------+
int deinit()
  {
//--- ディスプレイからメッセージを削除
   Comment("                                                     ");
//----
   return(0);
  }
//+------------------------------------------------------------------+

上記で明示した日時に設定すると、119行からなるクォート・ファイルを取得しました。最後のライン"フォーキャスト,0" –は、将来の予測が行われるであろう箇所です。 ここでは始値を使用していることに留意してください。また、ファイルのクォートは、MQL4、即ちプログラミング言語の場合とは逆の順序にアレンジされています。

インディケーターはファイルquotes.txtをターミナル・フォルダ\expert\files\に間違いなく生成します。以下で紹介していくエキスパートアドバイザーは、デモまたはリアルモードで稼働しているときに、特定のフォルダからクォーツファイルを取り出します。しかし、テストモードで使用する場合、このファイルは\tester\files\フォルダに置かれなければいけないので、手動でquotes.txtをターミナルの\tester\files\フォルダに移しています。

以下にチャートを示します。


図1. ユーロ/ドル クォーツ チャート


チャートにたくさんのトレンドが発生しているのが見て取れますが、私たちのゴールは、トレードシステムの将来の安定性を予測することです。したがって、初期ユーロ/ドル1時間足クォートの定常性を分析していきます。

記述統計を計算していきましょう。



図2記述統計


記述統計では以下のことが分かります。

  • 右欄にスキューがあります(数値は0.244950ですが、本来0であるべきです)。
  • 正規分布すべき初期クォートの確率は9.64%です。

視覚的に、ヒストグラムは確かに正規分布とは関係していませんが、9.64%という確率はある種の間違いを引き起こすかもしれません。

理論と比較して、それ証明してみましょう。


図3ユーロ/ドル・ヒストグラムと典型的な正規分布曲線との比較


ユーロ/ドル_Рќ1 クォートが正規分布とはかけ離れたものになっているのが分かります。

しかし、結論を出すにはまだ早すぎます。確定的成分の存在は、完全にランダム変数(クォート)の統計的特性を歪ませている一方で、確定的成分の存在を示唆しているトレンドを見ることができますね。

クォートの自己相関関数を計算してみましょう。

次のように表すことができます。


図4ユーロ/ドル_H1 クォートの自己相関関数


チャートにプロットする場合、ラグ間に相関性が欠如した確率があります。それは最初の16ラグのためにゼロではありません。チャートと確率性は、検討中のクォートは、確定成分が含まれている。すなわち、ユーロ/ドル_H1でラグとの間に相関関係があることを確かに示唆しています。

決定論的なコンポーネントが初期クォートから減算されている場合は、残差が統計的なものの特徴を持っているのでしょうか?

このことを調査するために、それが初期クォートの最初の差(残差)で動作することが、より予測されるかどうかを確認するために単位根検定を適用します。


表1単位根検定

上記のテストは以下のことを示しています。

  • 最初のクォートは、(初期の差が正規分布している)単位根を持っている確率は、41%です。
  • DW(ダービン・ワトソン)の統計は、初期の差が正規分布していることも示唆しており、2.2以上です。
結論:値のシリーズのトレンド除去をおこない、トレンド除去から残留物を分析するのが適切です。


1.2. スムージング

ホドリック・プレスコット・フィルターは、以前の記事から類推して、ユーロ/ドルの相場から、確定成分を分離するために使用されます。

シリーズ名の番号"10"は、ホドリック・プレスコット・フィルターにおけるラムダ・パラメーターを意味します。このツールの背景にある理論に基づいて、ラムダ値は、次のように表示される結果のために非常に重要です。



図5ホドリック・プレスコット・フィルターを使用したスムージング結果

以前の記事にある式を使用します。以下のようにEViews表記で表示される式です。

quotes = C(1) * HP(-1) + C(2) * D(HP(-1)) + C(3)*D(HP(-2))

すなわち、この式では、確定成分と、初期クォートとその確定的成分との差を意味するノイズとを考慮に入れるのです。

初期クォートの現行モデル分析に続いて、以下ように回帰式のパラメータを取得します。


表2回帰式評価


НР1_D(-1)が確かに非常に許容できない場合で、係数がゼロとなる確率は39%です。ここで紹介しようとしている例では、デモンストレーションの目的のためのものであるため、全て記述していきます。

回帰式の推定(式係数の推定)を得て、ワン・ステップ・アヘッド・フォーキャストを進めるができます。

結果は以下の通りです。



図6ユーロ/ドル ワン・ステップ・アヘッド・フォーキャスト(月曜 12AM)


1.3. 回帰式からの残差評価

回帰式から残差の限定分析を実行してみましょう。この残差は、初期ユーロ/ドル・クォートから回帰式を用いて計算された値を差し引いて得られました。

この残差の特性は、取引システムの将来の安定性を予測するのに役立つことを思い出してください。

最初に、残差におけるラグ(遅れ)との相関関係を分析するためのテストを実行します。



図7残差の自己相関関数


残念なことに、、ラグ間の相関が残っていますし、それらの存在は、統計分析に疑問を投げかけてきます。

次に実行しようとしているテストは、残差の正常テストです。<分節 5761>

結果は以下の通りです。


図8回帰式で得られた残差ヒストグラム


正規分布する残差確率は、非常に大きな数字である25.57パーセントです。

残差の不均一のためのテストを実行してみましょう。

結果は以下のとおりです。

  • GARCH型の不均一が存在しない確率は16.08%です。
  • ホワイトの一般的な不均一が存在しない確率は、0.0066パーセントです。
結論:微分すると、正常に分配された25%の確率と、相関関係がないゼロ近似確率とで残差を取得します。そして、ホワイトの一般的な不均一は存在しないという仮説を厳密に拒否することができます。これは、私たちのモデルではなく、一般的なものです。不均一性が存在する場合には、再び不均一性のために後でテストされるラグと、そのような不均一性モデルとの間の相関をなくすことが必要であることを意味します。

私の目的は、予測に基づいて、取引システムの開発を実証することであるので、私はトレーダーにとって関心のある事柄を得るために、計算を継続するつもりです。その事柄とは、損益のことです。


2. 推定予測結果

トレードでは、異なるモデル比較の補助解析ツールで得られる予測誤差よりも、利益に興味を持っています。それ以上でもそれ以下でもありません。

予測結果を推定するために、EViews言語のプログラムが書かれました。これは、ユーロ/ドル・クォートの実際の増分の動きと、予測値とを比較します。これらの増分が一致すれば、利益があります。一致しなければ、損失となります。さらに、予測単位と一致するすべての増分、およびそれぞれの損失の合計を表して利益を計算します。

損益比率はプロフィットファクターとして指定されます。それから、不採算インクリメントに対する収益性の比率(損益トレード比率)を計算します。 連続した損失トレード回数と、連続した損失トレードの損失比率(リカバリー・ファクター、回収率)も算出されます。

取引システムの観点からモデリングの結果を推定するためのEViews言語のプログラムは、メインプログラムと2つのサブルーチンで構成されています。

メイン(ヘッド)プログラムは以下の通りです。

' 
' ワンステップアヘッド予測プログラム
' Version of 26.09.2011 
'-----------------------------------------------
 include    sub_profit_factor
 include    sub_model_2
'
' 1. МТ4名においてEViews・作業ファイルを作成 
'
 %path   = "C:\Program Files\BCS Trade Station\tester\files"
 cd      %path

 if @fileexist("work.wf1") = 0  then
  wfcreate(wf  = work)  u 510
 else
  wfopen   work
 endif
'
'ファイルからクォートの読込
 read(t = txt)   kotir.txt date $ kotir
'
' NAのない一連の観察数
 !number   = @obs(kotir)
 smpl     1  !number  - 1


 genr  trend    = NA        ' Trend = kotir_f(i) - kotir(i-1)
 genr  kotir_d  = d(kotir)  ' 値動きにおけるワン・ステップ増分  - d(kotir)
'
 
' モデル計算
 call  sub_model_2
'
' 利益表を計算
 call sub_profit_factor

' 結果ファイルを生成
 genr result   = 0
'
' 結果書き込み
 result(1)  = kotir_f(!number)    ' ワン・ステップ・アヘッド・フォーキャスト
 result(2)  = kotir_f_se(!number) ' ワン・ステップ・アヘッド・フォーキャスト・エラー
 result(3)  = trend(!number - 1)  ' 予測方向
'-----------------------------------------------
' MT4へ結果を返します。
'
 smpl      1  10
 write(t=txt,na=0,d=c,dates)  EViewsForecast.txt   result

'-----------------プログラム修了--------------
 smpl      1  !number
 save       work 
 close      @all
 exit
'
'-----------------------------------------------


メインプログラムの数は、モデル(下記参照)を含むサブルーチンの数に等しいものとします。これは作業の簡略化のために行われます。

モデルの変更は、モデルのサブルーチンの名前の変更に関連する主なプログラムの2つの行を変更する必要があります。

モデル(回帰式)を含むサブルーチン:

subroutine  sub_model_2

  cd
  wfselect             work
  smpl          1    !number    -  1
' 最初のラムダとНРフィルタ・クォートを使用して1番レベルをスムージングし、
' 2ファイルを生成します。:  
'      hp1     -  スムージング・ファイル
'      p1_d    -   残差ファイル
  hpf(lambda    =  10)   kotir hp1   @hp1_d
'
'  4. 次のシリーズを使用した回帰eq02を評価
'        hp1  
'        hp1_d
  equation eq1.ls   kotir   hp1(-1)   hp1_d(-1) hp1_d(-2)


'  
'  予測領域が含まれるようにサンプルを拡張
  smpl              1 !number
'
'  ワン・ステップ・アヘッド・フォーキャストを実行し、出力シリーズを生成:
'    kotir_f     -  フォーキャスト
'    kotir_f_se  -  フォーキャスト・エラー 
  fit(p)            kotir_f   kotir_f_se

  save              work

endsub

サブルーチンの数は、モデルの数に等しくなければなりません。

別のモデルの場合、サブルーチンの名前とメインプログラム内の名前は、変更されなければなりません。

モデルの利益/損失のパラメータを計算するサブルーチン:

' 予測結果評価のサブルーチン
' Version of 27.09.2011 
' ----------------------------------------------------------------------------
' クォート増加と予測増分を比較するために、
' プログラムは以下を計算します。: 
'  増分に関したプロフィット・ファクター;
'   観測数における方程式の収益性
'  最大ドローダウンに対する利益の割合である、リカバリーファクター
' ----------------------------------------------------------------------------
subroutine sub_profit_factor

' ローカル変数
   !profit = 0          ' 累積利益
   !lost = 0            ' 累積損失 
   !profit_factor = 0   ' プロフィット・ファクター
   !i = 1               ' ワーク・インデックス
   !n_profit = 0        ' 利益トレード数
   !n_lost = 0          ' 損失トレード数
   !n_p_l = 0           '
   !pr = 0              '  連続損失が無いこと
   !prosadka = 0        ' ドローダウン - 累積連続損失
   !tek_prosadka = 0    ' 現在のドローダウン
   !tek_pr = 0          '  現在の損失トレード数

 cd
 wfselect       work
 smpl        1   !number

' 各バーのトレンドを計算
 for  !i  =  1  to  !number - 1
  trend(!i) = kotir_f(!i + 1) - kotir(!i)
 next

'  予測に達した場合は利益を計算します
 for  !i      =  1   to  !number - 1
  if  trend(!i) * kotir_d(!i) > 0   then    ' トレンドは増加と一致しているか?- Yes
   !profit   = !profit + @abs(kotir_d(!i))  '  利益蓄積
   !n_profit = !n_profit +1                 '  利益トレードの蓄積
   !tek_pr   = 0                            '  ゼロで現在の連敗をリセット
   !tek_prosadka  =   0                     ' ゼロで現在のドローダウンをリセット
  endif
  if  trend(!i) * kotir_d(!i) <  0   then   ' トレンドは増加と一致しているか?- No
   !lost   = !lost + @abs(kotir_d(!i))      ' 損失蓄積
   !n_lost = !n_lost + 1                    ' 損失トレードの蓄積

   !tek_pr = !tek_pr + 1                              ' 損失取引の数を増やす。
   !tek_prosadka = !tek_prosadka + @abs(kotir_d(!i))  ' 現在のドローダウンを増加させる。
  endif

  '  最大損失トレードを選択
  if  !tek_pr > !pr then
   !pr  = !tek_pr
  endif

  ' 最大ドローダウンを選択
  if  !tek_prosadka  > !prosadka  then
   !prosadka  = !tek_prosadka
  endif
 next

'   ゼロによる除算をブロック
 if !lost = 0 then                 ' 損失トレードなし
  !profit_factor = 1000
 else
  !profit_factor = !profit / !lost  ' プロフィットファクター
 endif 
 
 if !n_lost = 0  then
  !n_p_l = !number      '  損失トレードが無いならば、 
                        '  利益トレード数は観測数と等しい。
 else
  !n_p_l =  !n_profit / !n_lost
 endif

 if !prosadka = 0  then
  !factor_reset = 1000
 else
  !factor_reset = !profit / !prosadka
 endif

'  無ければ結果テーブルを生成
 if @isobject("tab_profit") = 0    then
  table(3,12)    tab_profit
  tab_profit.title  サンプルを超えた収益性とサンプル終了後にワン・ステップ・アヘッド・フォーキャスト

' 表見出しの作成
  tab_profit.setfillcolor(1) yellow 
  tab_profit.setfillcolor(2) yellow
 
' 列の特性を設定
' 1列目
  setcolwidth(tab_profit,1,15)
  tab_profit(1,1)   = "サンプル"
  tab_profit(2,1)   = "はじまり"

' 2列目
  setcolwidth(tab_profit,2,15)
  tab_profit(1,2)   = "サンプル"
  tab_profit(2,2)   = "おわり"

' 3列目
  setcolwidth(tab_profit,3,7)
   tab_profit(1,3)   = "実際値"
  tab_profit(2,3)   = "おわり"

' 4列目
  setcolwidth(tab_profit,4,7)
  tab_profit(1,4)   = "ワン・ステップ"
  tab_profit(2,4)   = "フォーキャスト"

' 5列目
  setcolwidth(tab_profit,5,10)
  tab_profit(1,5)   = "フォーキャスト"
  tab_profit(2,5)   = "エラー"

' 6列目
  setcolwidth(tab_profit,6,8)
  tab_profit(1,6)    =  "利益"
  tab_profit(2,6)    =  "サンプル"

' 7列目n
  setcolwidth(tab_profit,7,8)
  tab_profit(1,7)    =  "損失"
  tab_profit(2,7)    =  "サンプル"

' 8列目
  setcolwidth(tab_profit,8,10)
  tab_profit(1,8)   = "最大"
  tab_profit(2,8)   = "ドローダウン"

' 9列目
  setcolwidth(tab_profit,9,8)
  tab_profit(1,9)   = "合計"
  tab_profit(2,9)    =  "損失"

' 10列目
  setcolwidth(tab_profit,10,7)
  tab_profit(1,10)    =  "プロフィットファクター"
  tab_profit(2,10)    =  "ピップス単位"

' 11th column
  setcolwidth(tab_profit,11,8)
  tab_profit(1,11)    =  "プロフィットファクター"
  tab_profit(2,11)    =  "(観測)"


' 12列目
  setcolwidth(tab_profit,12,8)
  tab_profit(1,12)   = "リカバリー"
  tab_profit(2,12)   = "ファクター"
  tab_profit.setlines(R1C1:R2C12) +o +v 
 endif

 tab_profit.insertrow(3) 1
 tab_profit.setlines(R3C1:R3C12) +a +v +i

' 表出力フォーマット設定 
 tab_profit.setformat(R3C1:R3C1)   c.16
 tab_profit.setformat(R3C2:R3C2)   c.16
 tab_profit.setformat(R3C3:R3C3)   f.4
 tab_profit.setformat(R3C4:R3C4)   f.4
 tab_profit.setformat(R3C5:R3C5)   f.4
 tab_profit.setformat(R3C6:R3C6)   f.4
 tab_profit.setformat(R3C7:R3C7)   f.4
 tab_profit.setformat(R3C8:R3C8)   f.4
 tab_profit.setformat(R3C9:R3C9)   f.0
 tab_profit.setformat(R3C10:R3C10) f.2
 tab_profit.setformat(R3C11:R3C11)  f.2
 tab_profit.setformat(R3C12:R3C12) f.2

' 表に結果を書き込み
 tab_profit(3 ,1) = date(1)
 tab_profit(3 ,2) = date(!number - 1)
 tab_profit(3 ,3) = kotir(!number - 1) 
 tab_profit(3 ,4) = kotir_f(!number - 1) 
 tab_profit(3 ,5) = kotir_f_se(!number - 1) 

 tab_profit(3 ,6) =  !profit
 tab_profit(3 ,7) =  !lost
 tab_profit(3 ,8) = !prosadka
 tab_profit(3 ,9) = !pr
 tab_profit(3,10) =  !profit_factor
 tab_profit(3,11) = !n_p_l
 tab_profit(3,12) = !factor_reset


' 作業ファイルにテーブルを保存
 save        work
 show        tab_profit
 
endsub

紹介した方程式のEViewsにおける、上記の簡易プログラム結果は以下のとおりです。


表3EViewsにおける収益性の推定結果

結果は残念なものでした。: 損失が利益の3倍もあります。しかも、これは19ピップスもの楽観的予測誤差値にも関わらず、です。モデルは改善が必要ですが、本稿でそれを行うつもりありません。フォーラムで、収益性の高いモデルの開発に参加を希望する皆さんと一緒に取り組んでいきたいと考えています。

これまで、ユーロ/ドル_H1クォートはEViewsツールを用いて分析されてきました。

しかし、メタトレーダー4・ターミナルのエキスパートアドバイザーで、予測結果を適用することは非常に魅力的であるように思われます。

EViewsとメタトレーダー4との間のデータのやり取りを考慮して、再度メタトレーダー4・エキスパートアドバイザーを使用して結果の分析を行いましょう。


3. EViewsとメタトレーダー4間のデータ交換


本稿では、EViewsとメタトレーダー4間のデータ交換は、.txtファイルを使用して実行されます。

交換アルゴリズムは、次のように表示されます。

  1. メタトレーダー4・エキスパートアドバイザー:

    • クォートファイルを生成します。;
    • EViewsをスタートします。
  2. EViews:

    • エキスパート・アドバイザーからのコマンドに応じて動作を開始します。;
    • エキスパート・アドバイザーから取得したクォート・ファイルquotes.txtの予測計算プログラムを実行します。;
    • EViewsForecast.txtファイルに予測結果を保存します。
  3. メタトレーダー4・エキスパートアドバイザー:

    • EViewsで結果の生成が完了すると、フォーキャスト・ファイルを読み込みます。;
    • ポジションのエントリー・イグジットを決定します。

ファイルの場所に関する注意

メタトレーダー4ターミナルのファイルは、標準のフォルダに置かれます。:\expertフォルダにはエキスパートアドバイザー、\expert\indicatorsフォルダにはインディケーター(テストに必要ではありません)が置かれます。これらすべては、ターミナル・ディレクトリに配置されています。エキスパートアドバイザーは、他のエキスパートアドバイザーと一緒にインストールされています。

エキスパートアドバイザーとEViews間の交換をおこなうファイルは、エキスパートアドバイザーの稼働中は \expert\files に置かれ、エキスパートアドバイザーをテストする場合は\tester\filesフォルダに置かれます。

エキスパートアドバイザーからEViewsへ送られたファイルは、選択シンボルやタイムフレームに関わらずクォート名.txtと名付けられます。したがって、エキスパートアドバイザーは、そんなシンボルでも使用することができます。一方でフォーキャスト・ステップは、その開始時にエキスパートアドバイザーのパラメータで指定されなければいけません。

EViewsはEVIEWSFORECAST.txtと名付けられたファイルを返します。EViews作業ファイルworf.wf1は、端末のディレクトリに配置されます。

本稿に添付されているEViewsプログラムで指定されたディレクトリは、あなたのコンピュータ上で利用可能なディレクトリにマッチすることはないでしょう。私は、ディスク・ルートフォルダにこれらのプログラムをインストールしました。EViewsにおいて、デフォルトのディレクトリにハンドルを取得したり、独自のディレクトリを指定する必要があります(私はEViews自体が利用するデフォルトのディレクトリを使用しませんでした)。


4. MQL4エキスパートアドバイザー

エキスパートアドバイザーの演算アルゴリズムは最大限に簡素化されています。

  • エキスパートアドバイザーは、任意のシンボルの1分足タームフレームに取り付けられています。;
  • 数分のフォーキャスト・ステップは、エキスパートアドバイザーのパラメータで指定されています。デフォルトのフォーキャスト・ステップでは、60分(Рќ1)です。1分足にエキスパートアドバイザーを接続することによって、より長いタイムフレームに切り替える際にテストチャートを圧縮することができるよう、より良いテスト結果を可視化することができます。;
  • EViewsにおけるフォーキャストの目的のため、エキスパートアドバイザーはquotes.txtファイルを、 エキスパートアドバイザーのパラメータに指定されているバー数(観測値)で生成します。;
  • 予測が現在の価格よりも大きい場合、買いポジションが表示されます。;
  • 予測が現在の価格よりも小さい場合は。売り ポジションが表示されます。;
  • エキスパートアドバイザーは、(ポジションを追加することなく)2つ以上のポジションを持ちません。;
  • 予測に関わらす、前のポジションをクローズし、新たに1つオープンします。ポジション・オープンのためのアルゴリズムは、EViewsでプログラムで利益/損失を計算するためのアルゴリズムと一致しています。
  • オープンするポジション・ボリュームは0.1ロットです。
  • ストップロスとテイクプロフィットのオーダーは使用しません(エキスパートアドバイザーは、予測エラー間隔でストップロスを置くコードを持っていますが、それらは100ピップスに設定しています)。
  • チャートは予測値と1つの標準的予測誤差間隔で2つのラインを示すように描かれています。エキスパートアドバイザーを使用している時間枠よりも短い時間枠にテスタからのチャートを表示する場合、予測ラインは、バックシフトしていることに注意してください。つまり、描かれたフォーキャストは、現在価格が期間の最後で得られるフォーキャストであるということです。

エキスパートアドバイザーは、1分足タイムフレームに表示されています。一方、テスターでは、チャートは5分足でより分かり易くしています。

ユーロ/ドル・トレードのためのMQL4エキスパートアドバイザーのソースコードは、本稿ではボリューム(約600行)大きすぎるために紹介していません。本稿に添付したEViews_MetaTrader_4.zip・アーカイブのEvewsMT4.mq4で見つけることができます。


5. エキスパートアドバイザー・テスト結果

テスタで1分足タイムフレームでエキスパートアドバイザーを実行します。

入力パラメーターは以下の通りです。



図9エキスパートアドバイザーの入力パラメーター


テストチャートの一部を以下に示します。



図10視覚モードにおけるエキスパートアドバイザーのテスト


1時間(ワン・ステップ)・アヘッド・フォーキャストを使用したエキスパートアドバイサーのテスト結果を以下にしめします。

ストラテジー・テスター・レポート

EvewsMT4

Real (Build 406)

シンボル

ユーロ/ドル

タイムフレーム

1分足(M1) 2011.09.12 00:00 - 2011.09.16 21:59 (2011.09.12 - 2011.09.17)

モデル

全ティック(最短で利用できるタイムフレームに基づく最も正確なモード)

パラメーター

StepForecast=60; NumberBars=101; MultSE=2;






ヒストリーバー数

7948

モデル・ティック

79777

モデル・クオリティ

25.00%

ミスマッチ・チャートエラー

0






ディポジット

10000.00





純利益

-202.10

総利益

940.72

総損失

-1142.82

プロフィットファクター

0.82

期待利得

-1.73



絶対ドローダウン

326.15

最大ドローダウン

456.15 (4.50%)

相対ドローダウン

4.50% (456.15)


総トレード数

117

ショートポジション(勝率%)

58 (51.72%)

ロングポジション(勝率%)

59 (45.76%)


利益トレード(全体%)

57 (48.72%)

損失トレード(全体%)

60 (51.28%)

最大

利益トレード

100.00

損失トレード

-79.00

平均

利益トレード

16.50

損失トレード

-19.05

最大

連勝(利益額)

6 (105.00)

連敗(損失額)

8 (-162.00)

最大

連続利益(カウント)

166.00 (5)

連続損失(カウント)

-162.00 (8)

平均

連勝

2

連敗

2




番号.

タイム

タイプ

オーダー

ボリューム

プライス

S / L

T / P

プロフィット

バランス

1

2011.09.12 01:00

売り

1

0.10

1.3609

1.3711

1.3509


2

2011.09.12 02:00

close

1

0.10

1.3584

1.3711

1.3509

25.00

10025.00


図11エキスパートアドバイザー・テスト結果


結果はEViewsで得られたものよりも優れています。

EViewsにおける結果の計算とテスターは、入力データの点で異なっていることに注意してください。EViewsは118本のバーを使用し、、左側3本のバーから始まる予測を計算します。ワン・ステップ・アヘッド・フォーキャストは、徐々に回帰式の推定に使用されるバー数を増やしながら、期間の終わりに向かって移動していきます。

エキスパートアドバイザーは、118本のバーのウィンドウをシフトし、119本目のバーの予測を計算します。すなわち、回帰式は、EViewsはサンプル内のウィンドウを拡大し、エキスパートアドバイザーは一定の幅のウィンドウをシフトするため、常に118本のバーが評価されるのです。

エキスパートアドバイザーは、拡張モデルの評価表を生成するのに役立ちます。上記の表は、単一の行で構成されているが、それは117行もあります。予測の生成ごとに日付がつきます。

評価は以下のとおりです。

開始
サンプル
終了
サンプル
実際値
終値
ワン・ステップ
フォーキャスト
フォーキャスト
エラー
利益
サンプル
損失
サンプル
最大
ドローダウン
合計
損失
プロフィット・ファクター
ピップス単位
観測プロフィット・ファクター
リカバリー・ファクター
12.09.2011 0:00 16.09.2011 21:00 1,3791 1,3788 0,0019 0,0581 0,1531 0,0245 7 0,38 0,67 2,37
12.09.2011 0:00 16.09.2011 21:00 1,3791 1,3788 0,0019 0,0581 0,1531 0,0245 7 0,38 0,67 2,37
09.09.2011 21:00 16.09.2011 20:00 1,3784 1,3793 0,0019 0,0569 0,1619 0,0245 7 0,35 0,64 2,32
09.09.2011 20:00 16.09.2011 19:00 1,3794 1,3796 0,002 0,0596 0,1609 0,0245 7 0,37 0,67 2,43
09.09.2011 19:00 16.09.2011 18:00 1,3783 1,3782 0,0021 0,0642 0,1554 0,0245 7 0,41 0,69 2,62
09.09.2011 18:00 16.09.2011 17:00 1,3783 1,3806 0,002 0,0616 0,1606 0,0245 7 0,38 0,68 2,51
09.09.2011 17:00 16.09.2011 16:00 1,3829 1,3806 0,002 0,0642 0,1586 0,0245 7 0,4 0,71 2,62
09.09.2011 16:00 16.09.2011 15:00 1,3788 1,3793 0,002 0,0626 0,1565 0,0245 7 0,4 0,71 2,56
09.09.2011 15:00 16.09.2011 14:00 1,3798 1,38 0,0021 0,063 0,1633 0,0245 7 0,39 0,73 2,57
09.09.2011 14:00 16.09.2011 13:00 1,3808 1,381 0,0022 0,062 0,1656 0,0318 9 0,37 0,71 1,95
09.09.2011 13:00 16.09.2011 12:00 1,3809 1,3813 0,0021 0,0602 0,1679 0,0318 9 0,36 0,66 1,89
09.09.2011 12:00 16.09.2011 11:00 1,3792 1,3808 0,0021 0,0666 0,1613 0,0245 7 0,41 0,73 2,72
09.09.2011 11:00 16.09.2011 10:00 1,3795 1,3826 0,0021 0,0666 0,167 0,0245 7 0,4 0,73 2,72
09.09.2011 10:00 16.09.2011 9:00 1,3838 1,3847 0,0022 0,0652 0,1668 0,0318 9 0,39 0,71 2,05
09.09.2011 9:00 16.09.2011 8:00 1,3856 1,3854 0,0022 0,0675 0,165 0,0318 9 0,41 0,73 2,12
09.09.2011 8:00 16.09.2011 7:00 1,386 1,3856 0,0022 0,0671 0,1652 0,0318 9 0,41 0,71 2,11
09.09.2011 7:00 16.09.2011 6:00 1,3861 1,3857 0,0022 0,067 0,1663 0,0318 9 0,4 0,68 2,11
09.09.2011 6:00 16.09.2011 5:00 1,3852 1,3855 0,0022 0,0655 0,1681 0,0318 9 0,39 0,63 2,06
09.09.2011 5:00 16.09.2011 4:00 1,3844 1,3851 0,0022 0,0662 0,1674 0,0318 9 0,4 0,66 2,08
09.09.2011 4:00 16.09.2011 3:00 1,3848 1,3869 0,0022 0,0654 0,1683 0,0318 9 0,39 0,68 2,06
09.09.2011 3:00 16.09.2011 2:00 1,3879 1,3875 0,0022 0,0694 0,1624 0,0318 9 0,43 0,73 2,18
09.09.2011 2:00 16.09.2011 1:00 1,3865 1,3879 0,0022 0,0698 0,1634 0,0318 9 0,43 0,71 2,19
09.09.2011 1:00 16.09.2011 0:00 1,3881 1,3883 0,0022 0,0726 0,1604 0,0245 7 0,45 0,76 2,96
09.09.2011 0:00 15.09.2011 23:00 1,3876 1,3882 0,0022 0,0721 0,162 0,0245 7 0,45 0,73 2,94
08.09.2011 23:00 15.09.2011 22:00 1,3885 1,3884 0,0022 0,0718 0,1614 0,0245 7 0,44 0,72 2,93
08.09.2011 22:00 15.09.2011 21:00 1,3888 1,3883 0,0022 0,0737 0,1597 0,0245 7 0,46 0,77 3,01
08.09.2011 21:00 15.09.2011 20:00 1,3885 1,3874 0,0022 0,0729 0,1604 0,0318 9 0,45 0,74 2,29
08.09.2011 20:00 15.09.2011 19:00 1,3867 1,386 0,0022 0,0721 0,1604 0,0318 9 0,45 0,74 2,27
08.09.2011 19:00 15.09.2011 18:00 1,3856 1,3834 0,0022 0,0721 0,1628 0,0318 9 0,44 0,72 2,27
08.09.2011 18:00 15.09.2011 17:00 1,385 1,3861 0,0023 0,0702 0,1651 0,0318 9 0,43 0,72 2,21
08.09.2011 17:00 15.09.2011 16:00 1,3885 1,3824 0,0023 0,0739 0,1638 0,0245 7 0,45 0,72 3,02
08.09.2011 16:00 15.09.2011 15:00 1,3773 1,3784 0,0021 0,0719 0,1556 0,0318 9 0,46 0,72 2,26
08.09.2011 15:00 15.09.2011 14:00 1,3795 1,3794 0,0021 0,0726 0,1537 0,0318 9 0,47 0,72 2,28
08.09.2011 14:00 15.09.2011 13:00 1,3814 1,3792 0,0021 0,0736 0,1564 0,0318 9 0,47 0,74 2,31
08.09.2011 13:00 15.09.2011 12:00 1,3802 1,3764 0,0021 0,0712 0,159 0,0318 9 0,45 0,74 2,24
08.09.2011 12:00 15.09.2011 11:00 1,3769 1,3753 0,0021 0,0719 0,1568 0,0318 9 0,46 0,72 2,26
08.09.2011 11:00 15.09.2011 10:00 1,3765 1,3732 0,0021 0,0721 0,1564 0,0318 9 0,46 0,74 2,27
08.09.2011 10:00 15.09.2011 9:00 1,3722 1,3718 0,0021 0,0716 0,1538 0,0318 9 0,47 0,72 2,25
08.09.2011 8:00 15.09.2011 7:00 1,371 1,3716 0,0021 0,0729 0,1542 0,0318 9 0,47 0,74 2,29
08.09.2011 8:00 15.09.2011 7:00 1,371 1,3716 0,0021 0,0729 0,1542 0,0318 9 0,47 0,74 2,29
08.09.2011 7:00 15.09.2011 6:00 1,3723 1,3727 0,0021 0,0716 0,1547 0,0318 9 0,46 0,72 2,25
08.09.2011 6:00 15.09.2011 5:00 1,3726 1,3725 0,0021 0,0711 0,1564 0,0318 9 0,45 0,69 2,24
08.09.2011 5:00 15.09.2011 4:00 1,3719 1,3731 0,0021 0,0711 0,1563 0,0318 9 0,45 0,69 2,24
08.09.2011 4:00 15.09.2011 3:00 1,374 1,3744 0,0021 0,0713 0,1547 0,0318 9 0,46 0,69 2,24
08.09.2011 3:00 15.09.2011 2:00 1,3748 1,3747 0,0021 0,0705 0,1547 0,0318 9 0,46 0,68 2,22
08.09.2011 2:00 15.09.2011 1:00 1,3743 1,3742 0,0021 0,0715 0,1544 0,0318 9 0,46 0,7 2,25
08.09.2011 1:00 15.09.2011 0:00 1,3738 1,3743 0,0021 0,0714 0,1544 0,0318 9 0,46 0,7 2,25
08.09.2011 0:00 14.09.2011 23:00 1,375 1,3743 0,0021 0,0724 0,1532 0,0318 9 0,47 0,73 2,28
07.09.2011 23:00 14.09.2011 22:00 1,375 1,3736 0,0021 0,0727 0,1532 0,0318 9 0,47 0,74 2,29
07.09.2011 22:00 14.09.2011 21:00 1,3751 1,3735 0,0021 0,0734 0,1532 0,0318 9 0,48 0,74 2,31
07.09.2011 21:00 14.09.2011 20:00 1,3748 1,3716 0,0021 0,0722 0,1555 0,0318 9 0,46 0,72 2,27
07.09.2011 20:00 14.09.2011 19:00 1,3714 1,3712 0,0021 0,0812 0,145 0,0189 6 0,56 0,74 4,3
07.09.2011 19:00 14.09.2011 18:00 1,371 1,3697 0,0021 0,0692 0,1577 0,0318 9 0,44 0,69 2,18
07.09.2011 18:00 14.09.2011 17:00 1,3673 1,369 0,0021 0,0695 0,154 0,0318 9 0,45 0,72 2,19
07.09.2011 17:00 14.09.2011 16:00 1,3687 1,3693 0,0021 0,0695 0,1548 0,0318 9 0,45 0,72 2,19
07.09.2011 16:00 14.09.2011 15:00 1,3704 1,3704 0,0021 0,066 0,1591 0,0318 11 0,41 0,69 2,08
07.09.2011 15:00 14.09.2011 14:00 1,373 1,37 0,002 0,066 0,1577 0,0318 10 0,42 0,69 2,08
07.09.2011 14:00 14.09.2011 13:00 1,3712 1,3681 0,002 0,066 0,1562 0,0318 9 0,42 0,69 2,08
07.09.2011 13:00 14.09.2011 12:00 1,3685 1,3653 0,002 0,0665 0,1534 0,0318 9 0,43 0,74 2,09
07.09.2011 12:00 14.09.2011 11:00 1,3655 1,3646 0,002 0,0673 0,1504 0,0318 9 0,45 0,77 2,12
07.09.2011 11:00 14.09.2011 10:00 1,3656 1,3634 0,002 0,0709 0,15 0,0318 9 0,47 0,77 2,23
07.09.2011 10:00 14.09.2011 9:00 1,3625 1,3625 0,002 0,0725 0,1461 0,0318 9 0,5 0,83 2,28
07.09.2011 9:00 14.09.2011 8:00 1,3631 1,3638 0,002 0,0719 0,1465 0,0318 9 0,49 0,8 2,26
07.09.2011 8:00 14.09.2011 7:00 1,3641 1,3643 0,002 0,0707 0,1481 0,0318 9 0,48 0,77 2,22
07.09.2011 7:00 14.09.2011 6:00 1,3635 1,3648 0,002 0,0724 0,1481 0,0318 9 0,49 0,8 2,28
07.09.2011 6:00 14.09.2011 5:00 1,3647 1,3656 0,002 0,0724 0,1476 0,0318 9 0,49 0,8 2,28
07.09.2011 5:00 14.09.2011 4:00 1,3665 1,3676 0,002 0,0667 0,1536 0,0318 9 0,43 0,72 2,1
07.09.2011 4:00 14.09.2011 3:00 1,3694 1,3683 0,002 0,0675 0,1504 0,0318 9 0,45 0,74 2,12
07.09.2011 3:00 14.09.2011 2:00 1,3682 1,3682 0,002 0,0672 0,1498 0,0318 9 0,45 0,74 2,11
07.09.2011 2:00 14.09.2011 1:00 1,3684 1,3686 0,002 0,067 0,1512 0,0318 9 0,44 0,72 2,11
07.09.2011 1:00 14.09.2011 0:00 1,3679 1,3686 0,002 0,067 0,1514 0,0318 9 0,44 0,72 2,11
07.09.2011 0:00 13.09.2011 23:00 1,3678 1,3691 0,002 0,0679 0,1507 0,0318 9 0,45 0,74 2,14
06.09.2011 23:00 13.09.2011 22:00 1,3692 1,3698 0,002 0,066 0,1517 0,0318 9 0,44 0,69 2,08
06.09.2011 22:00 13.09.2011 21:00 1,3708 1,3705 0,002 0,0652 0,1512 0,0318 9 0,43 0,69 2,05
06.09.2011 21:00 13.09.2011 20:00 1,3719 1,3709 0,002 0,0652 0,1512 0,0318 9 0,43 0,69 2,05
06.09.2011 20:00 13.09.2011 19:00 1,371 1,3691 0,002 0,0652 0,1517 0,0318 9 0,43 0,69 2,05
06.09.2011 19:00 13.09.2011 18:00 1,3677 1,3669 0,002 0,0666 0,1485 0,0318 9 0,45 0,72 2,09
06.09.2011 18:00 13.09.2011 17:00 1,3678 1,3677 0,002 0,0666 0,149 0,0318 9 0,45 0,72 2,09
06.09.2011 17:00 13.09.2011 16:00 1,3698 1,3659 0,002 0,0625 0,1555 0,0318 9 0,4 0,64 1,97
06.09.2011 16:00 13.09.2011 15:00 1,3658 1,3643 0,002 0,065 0,1513 0,0318 9 0,43 0,72 2,04
06.09.2011 15:00 13.09.2011 14:00 1,3665 1,3636 0,002 0,0643 0,1527 0,0318 9 0,42 0,69 2,02
06.09.2011 14:00 13.09.2011 13:00 1,3639 1,3619 0,002 0,0659 0,1552 0,0318 9 0,42 0,74 2,07
06.09.2011 13:00 13.09.2011 12:00 1,3617 1,3628 0,0021 0,0824 0,1432 0,0189 6 0,58 0,8 4,36
06.09.2011 12:00 13.09.2011 11:00 1,3616 1,361 0,0021 0,0824 0,1435 0,0189 6 0,57 0,8 4,36
06.09.2011 11:00 13.09.2011 10:00 1,3582 1,3631 0,002 0,0795 0,1435 0,0189 6 0,55 0,8 4,21
06.09.2011 10:00 13.09.2011 9:00 1,3654 1,3656 0,002 0,077 0,146 0,0189 6 0,53 0,74 4,07
06.09.2011 9:00 13.09.2011 8:00 1,3655 1,3664 0,0021 0,0813 0,1442 0,0189 6 0,56 0,77 4,3
06.09.2011 8:00 13.09.2011 7:00 1,3679 1,3673 0,0022 0,0834 0,1435 0,0189 6 0,58 0,77 4,41
06.09.2011 7:00 13.09.2011 6:00 1,3685 1,3668 0,0022 0,0828 0,1448 0,0189 6 0,57 0,74 4,38
06.09.2011 6:00 13.09.2011 5:00 1,3676 1,3669 0,0022 0,0879 0,1406 0,0189 6 0,63 0,85 4,65
06.09.2011 5:00 13.09.2011 4:00 1,3669 1,3653 0,0022 0,0821 0,1458 0,0189 6 0,56 0,8 4,34
06.09.2011 4:00 13.09.2011 3:00 1,3635 1,3639 0,0022 0,0821 0,1428 0,0189 6 0,57 0,8 4,34
06.09.2011 3:00 13.09.2011 2:00 1,3637 1,3646 0,0022 0,0821 0,1428 0,0189 6 0,57 0,8 4,34
06.09.2011 2:00 13.09.2011 1:00 1,3657 1,364 0,0022 0,0825 0,1407 0,0189 6 0,59 0,8 4,37
06.09.2011 1:00 13.09.2011 0:00 1,366 1,3639 0,0022 0,085 0,1384 0,0141 6 0,61 0,83 6,03
06.09.2011 0:00 12.09.2011 23:00 1,3678 1,3655 0,0022 0,083 0,1416 0,0141 6 0,59 0,8 5,89
05.09.2011 23:00 12.09.2011 22:00 1,366 1,3613 0,0022 0,0806 0,1424 0,0123 6 0,57 0,8 6,55
05.09.2011 22:00 12.09.2011 21:00 1,3572 1,3585 0,002 0,0731 0,1414 0,0152 6 0,52 0,77 4,81
05.09.2011 21:00 12.09.2011 20:00 1,3576 1,3601 0,002 0,0714 0,1432 0,0152 6 0,5 0,74 4,7
05.09.2011 20:00 12.09.2011 19:00 1,3607 1,3637 0,0021 0,0712 0,1406 0,0129 6 0,51 0,74 5,52
05.09.2011 19:00 12.09.2011 18:00 1,3632 1,3619 0,0021 0,0712 0,1405 0,0129 6 0,51 0,74 5,52
05.09.2011 18:00 12.09.2011 17:00 1,3609 1,3641 0,0021 0,073 0,1378 0,0129 6 0,53 0,77 5,66
05.09.2011 17:00 12.09.2011 16:00 1,3684 1,3659 0,002 0,0713 0,1334 0,0083 6 0,53 0,74 8,59
05.09.2011 16:00 12.09.2011 15:00 1,3665 1,3636 0,002 0,0727 0,1343 0,0083 6 0,54 0,77 8,76
05.09.2011 15:00 12.09.2011 14:00 1,363 1,3601 0,002 0,072 0,1348 0,0083 6 0,53 0,77 8,67
05.09.2011 14:00 12.09.2011 13:00 1,3603 1,3594 0,002 0,0752 0,1304 0,0083 6 0,58 0,83 9,06
05.09.2011 13:00 12.09.2011 12:00 1,3623 1,3589 0,002 0,0742 0,1304 0,0083 6 0,57 0,83 8,94
05.09.2011 12:00 12.09.2011 11:00 1,3597 1,3561 0,0019 0,0737 0,1291 0,0083 6 0,57 0,8 8,88
05.09.2011 11:00 12.09.2011 10:00 1,3561 1,3551 0,0019 0,0729 0,1275 0,0083 6 0,57 0,8 8,78
05.09.2011 10:00 12.09.2011 9:00 1,3556 1,3552 0,002 0,072 0,1283 0,0083 6 0,56 0,77 8,67
05.09.2011 9:00 12.09.2011 8:00 1,3536 1,3532 0,002 0,072 0,1271 0,0083 6 0,57 0,77 8,67
05.09.2011 8:00 12.09.2011 7:00 1,3519 1,3554 0,0019 0,0703 0,1288 0,0083 6 0,55 0,74 8,47
05.09.2011 7:00 12.09.2011 6:00 1,3583 1,3579 0,0019 0,072 0,1224 0,0083 6 0,59 0,77 8,67
05.09.2011 6:00 12.09.2011 5:00 1,3591 1,3582 0,0019 0,0715 0,1224 0,0083 6 0,58 0,77 8,61
05.09.2011 5:00 12.09.2011 4:00 1,3593 1,3589 0,0019 0,0713 0,1224 0,0083 6 0,58 0,75 8,59
05.09.2011 3:00 12.09.2011 2:00 1,3583 1,361 0,0019 0,0746 0,1192 0,0083 6 0,63 0,78 8,99


表4EViewsテスト結果


表は、モデルが(とても原始的で、未完成で)、事実上使用に耐えるものではないことを示しています。改良が必要です。

2列のチャートをプロットしてみましょう。ピップス単位におけるプロフィット・ファクターと、観測プロフィット・ファクターです。


図12118本のバーサンプルにおけるモデル・プロフィット・ファクター・チャート


このチャートは、分析するバー数とプロフィット・ファクターとの関連性を表しています。明らかな上昇傾向があります。

238本のバー・サンプルの結果を確認してみましょう。チャートは以下のとおりです。


図13236本バー・サンプルにおけるモデル・プロフィット・ファクター・チャート


プロフィット・ファクター・チャートが異なるという事実は、モデルが不安定であることを示唆しています。


おわりに

本稿は、メタトレーダー4・エキスパートアドバイサーでの開発のため、 EViewsが提供したワン・ステップ・アヘッド・ フォーキャストの使用について述べました。

ここで得られた残念な結果は、EViewsにおけるモデルの構築は、非常に複雑な作業だということを示しています。しかしまた、エキスパートアドバイザーの直感的な開発よりも、より生産性があるように思われる開発手法だと考えています。


MetaQuotes Ltdによってロシア語から翻訳されました。
元の記事: https://www.mql5.com/ru/articles/1345

添付されたファイル |
EViewsMT4.zip (10.25 KB)
テクニカル分析と市場予測の手法について テクニカル分析と市場予測の手法について
本稿は、チャートなどを使用した視覚的思考と、"箱から出した"市場見通しを通じ、よく知られた数学的手法の能力と可能性について考察しています。 一方で、本稿は、トレードの考え方を再考する想像力を得ることがでますので、幅広く皆さんの注目を集めると思います。また他方で、本稿は幅広い分析および予測ツールについての代替開発並びにプログラムコードの実装に役立つでしょう。
われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか
われわれはシグナルサービスを強化し、メカニズムを改良し、新しい関数を追加し、欠陥を修正し続けています。2012年の MetaTrader シグナルサービスと現在の MetaTrader シグナルサービスはまったく異なる2つのサービスのようなものです。現在、特定バージョンの MetaTrader クライアントターミナルをサポートするサーバーのネットワークで構成される仮想ホスティングクラウドサービスを導入中です。
いくつかの都市伝説の検証『アジアセッションでの取引のように、一日の取引が動く』 いくつかの都市伝説の検証『アジアセッションでの取引のように、一日の取引が動く』
いくつかの都市伝説、ここでは『アジアセッションでの取引のように、一日の取引が動く』というものを検証していきたいと思います。
トレードシグナルを購読選択する場合のチップステップバイステップガイド トレードシグナルを購読選択する場合のチップステップバイステップガイド
このガイドは、シグナルサービス・トレードシグナルのテスト・要求されたシグナルを調べるアプローチシステムのためのものであり、潜在性・リスク・トレード意図・様々な口座タイプや金融ツールで稼働するという基準を満たします。