アーリーリタイアを目指すプログラマのブログ

アーリーリタイアを目指すプログラマのブログです。アーリーリタイアを目指すにあたって考えたことや調べたことを書いていきます。

株価指数CFD長期保有戦略(案)

以前からCFDの長期保有がいける気がするということでいろいろと考えていたのですが、 あれから具体的な戦略が固まってきたので、まとめておきます。

6月末から一応実践はして運良くある程度の利益が出ていますが、過去のチャートを使って検証はできていないので、(案)ということにしておきます。

注: この戦略はGMOクリック証券CFDの2020年8月現在の仕様でしか使えません。

2020/08/21 追記

バックテストをした結果、この方針よりもよい方針があることに気がつきました。 また別途記事にしようと思います。

この戦略のデメリット

最初にこの戦略のデメリットについて書いておきます。

  • 株価指数の長期的な成長が崩れると使えなくなります
  • GMOクリック証券CFDの仕様変更が起こると使えなくなる可能性があります
  • 毎日チャートを確認・計算する必要があります
    • 忘れていると大損害を負う可能性があります
    • 計算はとても面倒です
  • 機械的ではありますが、強い意思でこの戦略を信じて売買する必要があります(下落時は特に難しいことが予想されます)
  • 高いレバレッジをかけるため、高金利になると思うような利益が出なくなる可能性があります
  • まだバックテストできていません ので重大な考慮漏れが隠れている可能性があります

用語とCFDの仕様

GMOクリック証券CFDに準じます。間違っていたら教えて下さい。

概要

以下概要です。

  • 建玉を持ち続け、指数の上昇に連れてレバレッジを高めていく
  • 買い建てしかしない
  • ロスカットされないように、IVを見てロスカットレートを調整する
  • 余力があれば買い、足りなければ決済
  • 投資対象はS&P500 (以降、SPX)
    • 相対モメンタムで決めてもいい。ただしIVが簡単にわかるもの(VIX、VXN、VXD、日経VI など)

具体的な行動

  1. 建玉ロスカットレートを調整する
    • 建玉ロスカットレート = min(avg20(SPX), SPX) * (1 - (VIX+32)/16*5/100 - (max(PosReturn/AvgReturn, 1)-1))
    • 詳細は後述
  2. 余力が足りなければ、建単価が最も高いものから決済していく
  3. 余力があれば、買う
  4. 現金が必要になったときは建単価が最も高いものから決済していく

詳細

詳細と、どうしてそうしているのかについて説明していきます。

ロスカットレートの決め方

建玉ごとにロスカットレートを調整します。

計算式は min(avg20(SPX), SPX) * (1 - (VIX+32)/16*5/100 - (max(PosReturn/AvgReturn, 1)-1)) になっていますが、煩雑でわかりにくいので、以下のように各項に分解して見ていきます。

  • min(avg20(SPX), SPX) : ベース部分
  • (VIX+32)/16*5/100 : IV部分
  • max(PosReturn/AvgReturn, 1)-1 : 傾斜部分

また、ロスカットレートをこれ以上上げられない(レバレッジ10倍)になる場合はレバレッジ10倍にします。買い建てた直後はだいたい3〜5倍程度のレバレッジに、そしてそこから+50%程度まで指数が上がるとその建玉レバレッジ10倍までかけられるようになります。

ベース部分

まず、 min(avg20(SPX), SPX) ですが、意味としてはSPXの20日移動平均とSPXの現在値の小さい方ということになります。

なぜこうするかというと、まず20日移動平均ですが、これがないと、たまたま大きく動いたときにロスカットレートを大きく調整して売買するので、頻繁に売買することになってしまいます。多少のブレでは調整する必要をなくすために、移動平均を使っています。20日というのはなんとなくこのくらいが丁度いいかなというくらいです。 20日移動平均だけではなくSPXの現在値も取れるようにしているのは、急激な下落時には20日移動平均だとベースが高い位置になってしまい、後述するVIXをもとにした計算を入れてもすぐにロスカットされてしまう可能性があるからです。ただしブレが大きくなるので、頻繁に売買することになってしまいます。これは今後改善したいところです(チャートの下をなぞるようななめらかな線を引くことができればそれが一番いいです)。

IV部分

次に (VIX+32)/16*5/100 の部分です。

まずこの戦略は知らないうちにロスカットされているという状況を極力排除したいというものになります。1日のうちに数分だけものすごく下がってその後もとに戻った場合に底でロスカットされてしまうと、ただ損をするだけになってしまいます。なのでロスカットレートはぎりぎりロスカットされないくらいにしたいです。

という事情があるため、1日の最大下落率を予測するためにIVを使っています。また、IVはいわゆるカナリアとしての効果もあるため、IVが高まってきたときにロスカットレートを下げることで早めに決済する、IVが下がってきたときに余力が生まれて買える、という利点も狙っています。デメリットとしては、IVがどんどん上がり実際に下落もしている場合、狼狽売りのようなことをしてしまいます。これも改善したい点です。

+32 というのは、突然IVが上がったときを事前に考慮しているものです。IVは変動率というよりは絶対値で変動すると思っていて(これは自分がそう思っているで正しいかどうかはわかりません)、そしてVIXやVXNのチャートを眺めると1日あたり+24が最大のようだったので、少し多めかつ計算しやすいように+32としています。

/16 は、IVは\sqrt{250}で1日の変動率の1σとなるので、近似して計算しやすいように/16としています。

*5は5σのつもりです。だいぶ大きいですが、毎日見ていられないこともあることを考えるとまあこのくらいかなという気がしています。絶対に毎日見られる場合や多少ロスカットされても許せる場合は小さくしてもいいと思います。

/100 は%で出てくるものを1ベースになおしているだけです。

傾斜部分

最後に max(PosReturn/AvgReturn, 1)-1 の部分です。

PosReturnは建玉の現在の損益率(+10%なら1.1、-10%なら0.9)、AvgReturnは口座内の平均損益率です。 PosReturn/AvgReturnはその建玉が平均と比較してどのくらいの利益が出ているか、1との最大値をとっているのはキャップをつけるため(キャップをつけないと損をしている建玉ロスカットレートが無制限に上がってしまう)、-1 は1ベースを0ベースにする計算上の調整です。

この項がない場合、各建玉ロスカットレートは建単価によらず同一となってしまいます。建単価が低いものはレバレッジが高いため、できるだけロスカットしたくありません。建単価が高いものを犠牲にしても建単価が低いものを守るために、傾斜をかけておきたいです。なので、利益が出ている建玉ロスカットレートを若干小さくするためにこの項を入れています。

実際やってみると傾斜をつけるにしてももうちょっといい式があるかもしれません。

なぜ建単価が大きいものから決済していくか

ロスカットレートを下げるためには、余力が必要です(なお余力は未拘束証拠金-評価損になります。評価益は入りません)。 余力がない場合は、現金を投入できなければ建玉を決済する必要があります。

じゃあどの建玉から決済していくかですが、この戦略では建単価が大きいものから決済していくとしています。

建単価が大きいものということは、損が大きいものということになります。なので、決済したときに他のどの建玉よりも確定損が大きくなります。が、余力を最も大きく生み出すためには建単価が最も大きいものが一番いいです。

例えば、建単価が3000と3300の2つの建玉があり、ロスカットレートはそれぞれ2400と2500にしたとします。ロスカット幅を建単価の5%とすると、拘束証拠金はそれぞれ750、965となります。未拘束の証拠金は0とします。 この状態で現在値3200になると、余力は-100になります(評価損が100のため)。建玉を決済した場合、余力はそれぞれ、750+200-100=850、965-100=865、となり、建単価が大きいものを決済したほうが余力を大きく生み出すことができます。 今回はロスカットレートに傾斜をつけましたが、傾斜をつけない場合はより差が広がります。

ということで、建単価が大きいものから決済すべきということになります。 直感的には建単価が小さいものを利確したほうがいいように思うかもしれませんがこうなります。

2020-08-23 追記: ここではロスカットレートが(ほぼ)同じ場合の話をしました。ロスカットレートが同じ場合は建単価が大きい方を決済したほうがいいことがわかっています。詳しくは以下の記事に書きました。

www.jitenspin.com

まとめ

この記事では私のCFD長期保有戦略について説明しました。

自分自身で実践してはいますが、バックテストはできていませんので、この戦略を参考にする場合はバックテストを事前にすることをおすすめします。

また、特にコロナショックのような一気に下落する相場では心がかき乱されることが予想されるので、この方針で運用しながら経験値を貯めつつより良い方針を探していきたいと思っています。