ファイナンス機械学習:戦略リスク 練習問題 戦略パラメータの値

毎週頻度のベットで、正確度60%、利益確定値と損切り値を共に2%として、年率換算シャープレシオ2の戦略の実行を望むとする。
 このパラメータで与えられるシャープレシオは、
$${\theta=\displaystyle{\frac{2p-1}{\sqrt{p(1-p)}} \cdot \sqrt{n} }}$$
から、1.47である。

対照ペイアウトの時のシャープレシオ

 よって、目標シャープレシオは達成されない。
 他のパラメータを固定にした時、必要な正確度は、スニペット15.3を用いて、0.63となる。

最低正確度

同様に、最低ベット頻度はスニペット15.4から、96回である。

最低ベット頻度

また、損益の閾値は、下限がそのままならば0.023に上げ、上限が固定されるなら下限は-0.017に引き上げなければならない。

損益閾値

それぞれのパラメータを独立に1%変化させた時の、シャープレシオへの感応度を計算する。

def aSR(ptsl,p,frq):
    pdiff=ptsl[0]-ptsl[1]
    return (pdiff*p+ptsl[1])*(frq**.5)/(pdiff*(p*(1-p))**.5)

pt=0.02
sl=-0.02
nFrq=52
p=0.6
ptsl=[pt,sl]
sr=aSR(ptsl,p,nFrq)
dt=0.01

dsr_pt=(aSR([pt*(1+dt),sl],p,nFrq)-sr)/dt
dsr_sl=(aSR([pt,sl*(1+dt)],p,nFrq)-sr)/dt
dsr_frq=(aSR(ptsl,p,nFrq*(1+dt))-sr)/dt
dsr_p=(aSR(ptsl,p*(1+dt),nFrq)-sr)/dt
print(f'pt:{np.round(dsr_pt,3)},sl:{np.round(dsr_sl,3)},\
frq:{np.round(dsr_frq,3)}, precision:{np.round(dsr_p,3)}')
シャープレシオへの感応度

よって、どれも同等な難しさでシャープレシオを向上させられるのならば、正確度を上げるのが効率が良い。
 これらのパラメータは互いに独立である。

この記事が気に入ったらサポートをしてみませんか?