読者です 読者をやめる 読者になる 読者になる

サイエンティストとマーケターのはざま

Pythonとか広告とかデータ分析とかとか


時間足ごとの始値と終値の傾向からトレード手法を検討する

FX IPython Notebook Python 時間帯別値動き

前回の記事で仲値時間前はドル買い傾向があると書きました。

仲値時間にかけて円安ドル高になるのか検証してみた - メモ代わりにブログ

 

 仲値時間に限らず、時間によって値動きに特徴があるかもしれません。

そこでドル円相場に関して、時間足ごとの始値と終値の推移(始値 - 終値)がどのようになっているか,

下の表にまとめてみました。

GMT+9

AM7:00

AM8:00

AM9:00

AM10:00

AM11:00

PM0:00

PM1:00

PM2:00

PM3:00

PM4:00

PM5:00

PM6:00

PM7:00

PM8:00

PM9:00

PM10:00

PM11:00

AM0:00

AM1:00

AM2:00

AM3:00

AM4:00

AM5:00

AM6:00

count

 

    2845.000000

    3201.000000

    3517.000000

    3520.000000

    3520.000000

    3520.000000

    3520.000000

    3520.000000

    3520.000000

    3519.000000

    3518.000000

    3519.000000

    3519.000000

    3518.000000

    3519.000000

    3519.000000

    3521.000000

    3521.000000

    3521.000000

    3521.000000

    3519.000000

    3518.000000

    3515.000000

    3512.000000

mean

       -0.007810

       -0.003277

       -0.003224

       -0.005250

        0.000926

        0.007571

        0.007196

        0.003696

        0.000472

        0.005587

        0.000705

        0.000932

        0.001583

       -0.002200

       -0.009022

       -0.001057

        0.003922

        0.006223

       -0.002178

       -0.002763

       -0.001287

        0.001430

       -0.000108

       -0.001244

std

         0.099597

         0.096780

         0.106065

         0.138823

         0.151229

         0.131609

         0.108402

         0.103920

         0.112331

         0.109939

         0.136138

         0.153584

         0.141914

         0.138092

         0.124439

         0.132533

         0.203107

         0.168266

         0.209170

         0.156136

         0.129738

         0.125865

         0.135309

         0.114275

min

        -1.360000

        -1.290000

        -0.670000

        -1.730000

        -2.640000

        -1.200000

        -0.930000

        -0.980000

        -1.650000

        -1.310000

        -1.260000

        -0.910000

        -1.200000

        -0.910000

        -0.890000

        -1.270000

        -1.210000

        -0.930000

        -1.520000

        -1.060000

        -0.980000

        -1.200000

        -1.090000

        -1.400000

25%

        -0.050000

        -0.050000

        -0.060000

        -0.070000

        -0.080000

        -0.050000

        -0.040000

        -0.040000

        -0.050000

        -0.050000

        -0.070000

        -0.080000

        -0.070000

        -0.070000

        -0.070000

        -0.060000

        -0.090000

        -0.080000

        -0.100000

        -0.080000

        -0.060000

        -0.050000

        -0.060000

        -0.050000

50%

        -0.010000

         0.000000

         0.000000

        -0.010000

         0.000000

         0.010000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

        -0.010000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

         0.000000

75%

         0.030000

         0.040000

         0.050000

         0.060000

         0.072500

         0.070000

         0.050000

         0.040000

         0.050000

         0.050000

         0.070000

         0.080000

         0.070000

         0.060000

         0.050000

         0.060000

         0.100000

         0.090000

         0.090000

         0.070000

         0.050000

         0.050000

         0.050000

         0.040000

max

         2.350000

         1.010000

         1.250000

         0.940000

         1.120000

         0.820000

         1.020000

         1.270000

         0.720000

         0.840000

         0.980000

         1.010000

         2.090000

         1.530000

         1.320000

         1.440000

         1.510000

         1.220000

         2.530000

         1.220000

         1.920000

         1.640000

         2.770000

         1.290000

 対象期間は2001年から2014年8月までです。各時間足の始値(open)から終値(close)の差分(dif)を求め、その要約統計量を求めています。

表のmean(平均)を見ると、AM11:00~PM7:00まではプラスでAM1:00~AM10:00まではほぼマイナスとなっていることがわかります。私なりの解釈ですが、これは日中時間帯は外資系の機関投資家が日本株等の買い付けのために円買いを行うため円高傾向になる。逆に深夜帯から朝にかけては外資のポジション調整や邦銀のドル買いによって円安傾向になる、とでも考えておくことにしましょう。

 

この結果から、

  (1)AM11:00にドル円を買い、PM7:59にそのショートポジションを決済する。

  (2)AM1:00にドル円を買い、AM10:59にそのロングポジションを決済する。

という2つのトレード手法が有効なのではないか、と考えました。

そこで、それぞれの手法を実行した場合にどれほどの収益を得ることができたのか、2001年から2014年の過去データを用いてバックテストを行いました。

 

(1)のケース

f:id:ukichang:20150113001341p:plain

 上記はdifの累積値の時系列グラフです。

毎日、AM11:00に1万通貨のドル円を売り、PM7:59にそのショートポジションを決済した場合、14年間で約100万円の収益(スプレッド差は考慮されていない)を確保することができたことがわかります。

仮にスプレッドを1銭として3,200回トレードしていると考えた場合、そのコストは32万なので、それでも収益はプラスです。

 

(2)のケース

f:id:ukichang:20150113002428p:plain

 上記はdifの累積値の時系列グラフです

毎日AM1:00に1万通貨のドル円を買い、AM10:59にそのロングポジションを決済した場合、14年間で約55万円の収益(スプレッド差は考慮されていない)を確保することができたことがわかります。

仮にスプレッドを1銭として3,200回トレードしていると考えた場合、そのコストは32万なので、それでも収益はプラスです。

以上、時間足ごとの始値と終値の傾向からトレード手法を検討した結果、次の2つの手法で収益化可能であることを示しました。

(1)AM11:00にドル円を売り、PM7:59にそのショートポジションを決済する。

(2)AM1:00にドル円を買い、AM10:59にそのロングポジションを決済する。

 

参考URL

日付の加算 減算 timedelta » Python Snippets