人気ブログランキング | 話題のタグを見る
ブログトップ

こんなFXの日記

konnafx.exblog.jp

システムトレーダーとして、日々研鑽を重ねていく…

資金管理の集大成プログラム~PART3

下は、前回紹介した、VST化搭載の複利プログラムです。


資金管理の集大成プログラム~PART3_a0204254_22522685.gif



たいていは、これだけでもうまく稼動してくれますが、場合によっては、やっかいな問題が発生することがあります。039.gif



1.やっかいな問題その1



まず、一つ目は、標準偏差が極端に大きくなったときに発生します。この場合、標準偏差に比例して最適損切り幅も大きくなるため、それに反比例して、最適枚数が著しく小さくなってしまい、有効証拠金の量や最大許容損失率の設定いかんによっては、最小取引枚数すら発注できない可能性もあります。たとえば、1ロット=10万通貨で、かつ、千通貨単位の業者であれば、0.01ロットが最小取引枚数となりますが、計算上、0.007ロットと算出された場合、下3桁が切り捨てられるので、「0」ロット発注となってしまい、発注エラーとなってしまいます。007.gif


この問題を回避することはそれほど難しくありません。エントリーの際に、「最適枚数>=0.01」という条件を付加すればよいわけで、具体的には、次のように記述するだけのことです。


資金管理の集大成プログラム~PART3_a0204254_23122076.gif
001.gif



2.やっかいな問題その2



二つ目は、逆に、標準偏差が極端に小さくなったときに発生します。この場合、標準偏差に比例して最適損切り幅も小さくなるため、それに反比例して、最適枚数が著しく大きくなってしまい、場合によっては、証拠金不足で発注できなかったり、あるいは、仮に発注できたとしても、証拠金維持率が著しく低いために、すぐに強制ロスカットを食らう危険性があります。


たとえば、


レバレッジ 50
口座資金 30万円
最大許容損失率 5%
最適損切り幅 0.1円 ← 標準偏差が小さいためにVST化により最適損切り幅も小さくなっている。
約定価格 80.00円

と仮定します。このときの最適枚数は、


損失額÷損切り幅÷10000=30万円×0.05÷0.1円÷10000=15万通貨 となります。


この場合、発注直後の証拠金維持率は、


有効証拠金÷必要証拠金=30万円÷(80×150000÷50)=125% です。


取引不可能とは言いませんが、かなり心もとないですよね。ちなみに、8月からレバ規制により最大レバレッジ=25となります。これを前提に再計算すると、


30万円÷(80×150000÷25)=62.5% となり、いなきりマージンコールのラインを下回ってしまい、仮に発注できたとしても、いつ強制ロスカットを食らうかわかりません。008.gif



この問題を安全に回避するためには、ちょっとめんどうな計算が必要になります。抽象的に言えば、これから建てようとするポジションに関して、最も証拠金維持率が低くなる場面を想定し、そのときの証拠金維持率がある一定限度(少し余裕を持たせて、たとえば、150%くらいにしておきましょう)を下回らないように最適枚数を補正することになります。そして、最も証拠金維持率が低くなる場面とは、そのポジションが損切りを食らう直前のはずです。そこで、次のような方程式を立てます。


損切り直前の証拠金維持率=1.5(=150%)


下線部を細分化して、


損切り直前の有効証拠金÷必要証拠金=1.5


さらに、下線部をそれぞれ細分化して、


(口座残高+口座クレジット-損切り損失額)÷(約定価格×補正枚数×10000÷レバ)=1.5


さらに、下線部を細分化すると、


(口座残高+口座クレジット-(損切り幅×補正枚数×10000))÷(約定価格×補正枚数×10000÷レバ)=1.5


という方程式が出来上がるので、この方程式を補正枚数について解くと、


補正枚数=(口座残高+口座クレジット)÷(約定価格÷レバ×1.5+損切り幅)÷10000


となります。042.gif042.gif042.gif


あとは、前回までの記事で算出した最適枚数と、今回算出した補正枚数とを比較して、より小さい方を実際のロット数として指定するプログラムを書けばいいわけです。


具体的なプログラムについては、次回紹介します。034.gif



応援よろしくお願いします。
   ↓
にほんブログ村 為替ブログへ
にほんブログ村
by xchsshzo | 2011-07-11 12:57 | メタトレーダー

by xchsshzo