最終更新日 : 2020/11/06
ナンピンによる含み損の計算
「ナンピンは絶対にしてはならない」と言われることが多い.「ナンピン」とは,現在のポジションを救済する目的で,為替レートが下落(上昇)するごとに買い増す(売り増す)ことを繰り返し,平均保有レートを下げよう(上げよう)とする試みである.
確かに,ナンピンを繰り返すことによる含み損は為替レートの変動の2乗で効いてくるので,無計画なナンピンは身を滅ぼす可能性を孕む。しかしながら,リスクをしっかりと評価した上での計画的なナンピンは,取引戦略として有効である.たとえば,FXトレードで有力視されているリピート系の取引手法は,必然的にナンピンによる含み損を抱えることになる.
ナンピンによる含み損やロスカットのリスクについて正確に知っておくことは,FXトレードで安定的な利益を得る上で必須の知識である.このページでは,簡単な取引モデルを使って,ナンピンによる含み損の表式やロスカットレートについて示す.
ナンピンによる含み損の表式
$r_{0}$を基準レートとして,レートが$\delta r \, (> 0)$だけ変動するごとに,値下がりなら買い,値上がりなら売りを繰り返すナンピンを行うことを考える.ここで,毎回の取引は同じ量とする.この設定では,レート$r_{0}$のポジションは保有していないことに注意する.
為替レートが$r$の時に保有しているポジション数$N$は,
\[ N = \left\lfloor \frac{|r – r_{0}|}{\delta r} \right\rfloor = \left\lfloor \frac{|\Delta|}{\delta r} \right\rfloor \ , \]
と表すことができる.ここで,$\lfloor x \rfloor$は$x$を超えない整数を表すGauss記号である.また,$r_{0}$からの値動き$\Delta = r – r_{0}$を定義した.
為替レート$r$は「通貨単位の比」を単位に持ち,例えば「1ドル=100円」のときの為替レートは,$r = 100 \, \text{jpy} / \text{usd}$と表されるということにしておこう.大文字で$\text{JPY}$などと書くと邪魔なので,小文字で$\text{jpy}$などと書くことにする.為替レートを単位なしの無次元量としても構わないのであるが,計算結果がどの通貨単位で表されているのかが分かりにくくなる.例えばドル円のようにレートが100倍ほど異なれば間違えることはないが,ユーロドルのように10%程度の違いであれば気づかずに間違えてしまうかもしれない.
ポジション数$N$に,一回あたりの取引量$p$をかけた$Np$が「建玉数量」を表す.取引量$p$は,例えば,ドル円のペアで1回の取引が「10,000ドル」の場合には,$p = 10000 \, \text{usd}$である.
これまでに定義した量を用いて,為替レートが$r$のときの含み損$Q \, (< 0)$を表すことができる.為替レートが$r$のときの平均建玉レート$\bar{r}$は
\[ \bar{r} = \frac{1}{2} \left[ (r_{0} + \text{sgn}(\Delta) \delta r) + (r_{0} + \text{sgn}(\Delta)N\delta r) \right] = r_{0} + \text{sgn}(\Delta) \frac{N + 1}{2}\delta r \ , \]
と計算できる.$\text{sgn}(\Delta)$は$\Delta$の符号を表す.したがって,含み損$Q$は,
\[ Q = -Np|\bar{r} – r_{0}| = -\frac{p\delta r}{2}N(N + 1) \ , \]
と表すことができる.あるいは,$r_{0}$に近い順に$n$番目のポジションのレート$r_{n}$は
\[ r_{n} = r_{0} + \text{sgn}(\Delta)n\delta r \ , \quad (n = 1, \dots, N) \ , \]
と表されることから,含み損$Q$を
\[ Q = -p \sum_{n = 1}^{N} |r_{n} – r_{0}| = – p\delta r \sum_{n = 1}^{N}n = -\frac{p\delta r}{2}N(N + 1) \ , \]
と計算してもよい.この取引手法では必ず含み損を抱えることに注意する.
ここで,含み損$Q$の単位について補足をしておく.XXX/YYYという通貨ペアを考えている場合,為替レートは$\text{yyy} / \text{xxx}$を単位として表され,$Q$の単位は$\text{yyy}$となる.したがって,$Q$を日本円で評価したい場合には,YYY/JPYの為替レートを掛ける必要がある.
ポジション数$N$を計算する際のGauss記号が煩わしいので,以降,
\[ N = \frac{|\Delta|}{\delta r} \ , \]
として計算を進める.このようにしても結果に大きな違いは生じない.(あるいは,単位値幅あたりの取引量$p / \delta r$を一定にして$\delta r \to 0$とした連続極限と思ってもよい)
このとき,含み損$Q$は,
\[ Q = -\frac{p\delta r}{2} \cdot \frac{|\Delta|}{\delta r} \left( \frac{|\Delta|}{\delta r} + 1 \right) \ , \]
と表すことができる.
特に,$|\Delta| / \delta r \gg 1$のとき,
\[ Q \simeq -\frac{p\delta r}{2} \left( \frac{|\Delta|}{\delta r} \right)^{2} = -\frac{1}{2}\rho\Delta^{2} \ , \]
のように,簡単な形に書ける.ここで,単位値幅あたりの取引量を$\rho \equiv p / \delta r \simeq pN / |\Delta|$と定義した.この量は「取引量密度」と呼ぶことにする.
計算例
1ドル=110円からレートが$100 \, \text{pips} = 1 \, \text{jpy} / \text{usd}$下がるごとに10,000ドルずつ買い増すナンピンをすることを考える.すなわち,$r_{0} = 100 \, \text{jpy} / \text{usd}$,$\delta r = 1 \, \text{jpy} / \text{usd}$,$p = 10000 \, \text{usd}$である.
このとき,たとえばレートが1ドル=100円まで下がった際の含み損は,$|\Delta| = 10 \, \text{jpy} / \text{usd}$として,
\begin{align*} Q &= -\frac{10000 \, \text{usd}}{2} \cdot 1 \, \text{jpy} / \text{usd} \cdot \frac{10 \, \text{jpy} / \text{usd}}{1 \, \text{jpy} / \text{usd}} \left( \frac{10 \, \text{jpy} / \text{usd}}{1 \, \text{jpy} / \text{usd}} + 1 \right) \\ &= -550000 \, \text{jpy} \ , \end{align*}
と計算できる.
この場合の取引量密度は,$p = 10000 \, \text{usd}$,$\delta r = 1 \, \text{jpy} / \text{usd}$より,
\[ \rho = \frac{p}{\delta r} = \frac{10000 \, \text{usd}}{1 \, \text{jpy} / \text{usd}} = 10000 \, \text{usd}^{2} / \text{jpy} \ , \]
である.取引量の単位(次元)には注意が必要である.
$|\Delta| / \delta r \gg 1$の場合の簡単な表式を用いて,先ほどと同様の条件での含み損$Q$を評価すると,
\begin{align*} Q = -\frac{1}{2}\rho\Delta^{2} = -\frac{10000 \, \text{usd}^{2} / \text{jpy}}{2} \cdot (10 \, \text{jpy} / \text{usd})^{2} = -500000 \, \text{jpy} \ , \end{align*}
と計算できる.今の場合は$|\Delta| / \delta r = 10$とあまり大きくないので,先ほどの厳密な計算結果と10%だけ異なっているが,概算の目的なら十分である.(近似の精度は$\delta r / |\Delta|$で決まり,今の場合$\delta r / |\Delta| = 0.1$だったので,10%程度の誤差が生じる)
ロスカットレートの計算
資産は有限であるから,無限にナンピンを繰り返すことはできない.そこで,有限の資産$A$を(日本円で)持っている場合,ナンピンによる含み損でロスカットされる為替レートを計算してみよう.このような計算は,具体的な取引モデルに対してリスクを評価する際に重要になる.
必要証拠金
保有しているポジションに対する必要証拠金の割合を$\alpha$と書こう.現在の国内FXのレバレッジの上限は25倍で,その場合は$\alpha = 4\% = 0.04$である.為替レートが$r$のときの必要証拠金$M$は,
\[ M = \alpha Npr = \alpha pr \cdot \frac{|\Delta|}{\delta r} = \alpha\rho r|\Delta| = \alpha\rho|\Delta|(r_{0} + \Delta) \ , \]
と計算することができる.
たとえば,$Np = 10000 \, \text{usd}$,$r = 100 \, \text{jpy} / \text{usd}$のとき,必要証拠金は
\[ M = 0.04 \times 10000 \, \text{usd} \times 100 \, \text{jpy} / \text{usd} = 40000 \, \text{jpy} \ , \]
となる.つまり,1ドル=100円のときに10,000ドルのポジションを保有するためには,40,000円が必要となる.
ロスカットレート
資産$A$と含み損$Q \, (< 0)$との和が必要証拠金$M$を下回る,すなわち$A + Q < M$となると破産(ロスカット)である.
破産レート$r_{*}$は,方程式$A + Q(r_{*}) = M(r_{*})$を解くことで求めることができる.この方程式は$r_{*}$についての2次方程式なので,原理的に解くことができる.しかし,得られる表式は複雑で,定性的な理解には役立たない.ここでは,$|\Delta| / \delta r \gg 1$の場合の$Q$の表式を用いて$r_{*}$を求めてみよう.解くべき方程式は,
\[ A – \frac{1}{2}\rho\Delta_{*}^{2} = \alpha\rho|\Delta_{*}|(r_{0} + \Delta_{*}) \ , \]
である.ここで,$\Delta_{*} = r_{*} – r_{0}$である.これを$|\Delta_{*}|$について解けば,
\[ \frac{|\Delta_{*}|}{r_{0}} = \beta \left[ \sqrt{1 + \gamma A / \rho r_{0}^{2}} – 1 \right] \ , \]
を得る.ここで,$\beta$と$\gamma$は$\alpha$と$\Delta$の符号$\text{sgn}(\Delta)$で決まる定数で,
\[ \beta \equiv \frac{\alpha}{1 + 2 \, \text{sgn}(\Delta)\alpha} \ , \quad \gamma \equiv \frac{2(1 + 2 \, \text{sgn}(\Delta)\alpha)}{\alpha^{2}} \ , \]
と定義されている.$\alpha = 0.04$の場合,具体的な数値は
\[ \beta = \begin{cases} 1 / 27 \simeq 0.037 & (\Delta > 0) \\ 1 / 23 \simeq 0.043 & (\Delta < 0) \end{cases} \ , \quad \gamma = \begin{cases} 1350 & (\Delta > 0) \\ 1150 & (\Delta < 0) \end{cases} \ , \]
である.$\gamma A / \rho r_{0}^{2}$を適当な条件で評価すると,
\[ \frac{\gamma A}{\rho r_{0}^{2}} = 11.5 \cdot \left( \frac{A}{10^{6} \, \text{jpy}} \right) \cdot \left( \frac{\rho}{10^{4} \, \text{usd}^{2} / \text{jpy}} \right)^{-1} \left( \frac{r_{0}}{100 \, \text{jpy} / \text{usd}} \right)^{-2} \ . \]
となる.したがって,この量は条件によって$1$より大きくも小さくもなり得る.もちろん,この量が大きければ大きいほどリスクは小さい.
適切な取引量密度の選び方
あるいは,実用的に気になるのは,資産$A$を持っている場合に,例えば20%の下落に耐えられるようにするには,取引量密度$\rho$をいくつに選べば良いのかということかもしれない.このためには,方程式を$\rho$について解いてみればよい.
\[ \rho_{*} = \frac{2A}{(1 + 2 \, \text{sgn}(\Delta)\alpha)|\Delta|^{2} + 2\alpha r_{0}|\Delta|} = \frac{2A / r_{0}^{2}}{(1 + 2 \, \text{sgn}(\Delta)\alpha)(|\Delta| / r_{0})^{2} + 2\alpha(|\Delta| / r_{0})} \ . \]
この表式に現れる$|\Delta| / r_{0} = (r – r_{0}) / r_{0}$は騰落率を表す.たとえば,資産を$A = 10^{6} \, \text{jpy}$(100万円)として,レートが$r_{0} = 100 \, \text{jpy} / \text{usd}$から$r = 80 \, \text{jpy} / \text{usd}$まで20%下落するとすれば,$\text{sgn}(\Delta) = -1$,$|\Delta| / r_{0} = 0.2$と置いて,
\[ \rho_{*} = \frac{2 \cdot 10^{6} \, \text{jpy} / (100 \, \text{jpy} / \text{usd})^{2}}{0.92 \cdot 0.2^{2} + 0.08 \cdot 0.2} = 3.8 \times 10^{3} \, \text{usd}^{2} / \text{jpy} \ , \]
となる.したがって,この場合には$1 \, \text{jpy} / \text{usd}$の値幅あたり,約$3800 \, \text{usd}$の購入ができることになる.
FXにおける収益は取引量密度$\rho$に比例するから,許容するリスクに対してどの程度まで$\rho$を大きくできるのか知っておくことは重要である.