2014年06月21日 19.シートのデザイン カテゴリ:第2章 システムトレードのためのExcelワークシート構築法入門 by 管理人 シートStep19をご覧ください。ここでは、作業しやすくするためシートに色を付けたり、絶対参照に使うセルを罫線で囲んだりしてみました。これらの作業の仕方は市販のExcelの教則本に細かく書かれていると思うので、各自で参照してください。 また、STEP19において、STEP18以前で使用していた絶対参照のセルの場所を移動しましたので、過去に説明したワークシート関数の説明の中で示したセルと場所が若干異なっているのでご注意ください。
2014年06月21日 18.パフォーマンスを評価する カテゴリ:第2章 システムトレードのためのExcelワークシート構築法入門 by 管理人 シートSTEP18をご覧ください。ここでは、今回解説に使った売買戦略のパフォーマンスを測ってみます。セルN4に次のように書きこみます。=X250/K8 この式の意味は、=X250/K8 損益曲線列の最終行=最終的な損益合計(÷初期投資金額ということです。 この値で、最初に投資した金額に対し、どれだけのリターンを出せたかを測ります。 次に、セルN5の次のように書きこみます。=MIN(Z21:Z250)この式の意味は、=MIN(Z21:Z250)ドローダウン列の最小値=最大ドローダウン(ということです。 続いて、セルN6に次のように書きこみます。=ABS(N4/N5) この式の意味は、=ABS(N4/N5)リターン÷最大ドローダウンの絶対値ということです。 この値によって、リターンと最大ドローダウンの比率を返しているのですが、今回の説明では、この値をリスク・リワード・レシオRRR(としておきます。しかしながら、今回解説に使ったシートでは、リターンが1より小さいので、返される値も意味がないものとなってしまっておりますのでご注意ください。 たとえば本来ならば、リターンが1.5出たとして、最大ドローダウンが-0.3だとしたら、1.5÷-0.3=-5となり、-5の絶対値の5が返されることになります。
2014年06月21日 17.最大ドローダウンを返す カテゴリ:第2章 システムトレードのためのExcelワークシート構築法入門 by 管理人 シートstep17をご覧ください。 ここでは、最大ドローダウンを返すために、まず、現時点最大累積損益というものを返し、そこからドローダウンを返していきます。セルY21に次のように書きこみ、オートフィルでデータの入っている最終行までワークシート関数をコピーします。 =IF(X21>Y20,X21,Y20)この関数の意味は、=IF(X21>Y20,もし、前日時点の現時点最大累積損益よりも、当日の損益曲線の列の値が大きかったら、X21当日の損益曲線の列の値を返すY20そうでない場合、前日時点の現時点最大累積損益を返すということです。次に、現時点最大累積損益を参照しながら、ドローダウンを返します。セルZ21に次のように書きこみ、オートフィルでデータの入っている最終行までワークシート関数をコピーします。=1-Y21/X21この式の意味は、1-現時点最大損益÷当日の損益曲線の値ということです。 つまり、ある時点での最大損益を1とし、その後、その値からドローダウンが何%だけ生じたのかを返すことができるようになった訳です。そして、この列の中の最小の値が最大ドローダウンとなります。
2014年06月21日 16.マネーマネジメント指標の修正 カテゴリ:第2章 システムトレードのためのExcelワークシート構築法入門 by 管理人 シートSTEP16をご覧ください。ここでは、STEP6で表現したマネーマネジメント指標が仮の状態であったので、それを修正します。V20、W20、X20にそれぞれ=K8と書き込みます。これは、システムのテストをする上で、初期投資金額となる金額の値をセルK8へ絶対参照して利用するためのものです。セルN21を次のように書き換え、オートフィルでデータの入っている最終行までワークシート関数をコピーします。■STEP15における修正前=ROUNDDOWN($K$8*$K$10/100/(J21*$K$12),0)■STEP16における修正後=ROUNDDOWN(X21*$K$10/100/(J21*$K$12),0) これで、マネーマネジメント指標の公式の中の資金量を損益曲線に対し相対参照することで、資金の増減を踏まえて、マネーマネジメント指標を返すことができるようになりました。
2014年06月21日 15.損益曲線を描く カテゴリ:第2章 システムトレードのためのExcelワークシート構築法入門 by 管理人 シートSTEP15をご覧ください。 ここでは、sell損益、buy損益、そして、総合の損益を区別して損益曲線を描いてみます。セルV21に次のように書きこみ、オートフィルでデータの入っている最終行までワークシート関数をコピーします。=SUM(T21)+V20セルW21に次のように書きこみ、オートフィルでデータの入っている最終行までワークシート関数をコピーします。=SUM(U21)+W20セルX21に次のように書きこみ、オートフィルでデータの入っている最終行までワークシート関数をコピーします。=IF(T21<>"",X20+T21,IF(U21<>"",X20+U21,X20))これらの関数の意味は、=SUM(T21)+V20Sellの損益に前日までのsell損益曲線の値を加える=SUM(U21)+W20buyの損益に前日までのbuy損益曲線の値を加える=IF(T21<>"",X20+T21,sell損益の列がブランクではないとき、前日までの総合損益曲線の値にsellの損益の値を加える=IF(U21<>"",X20+U21,そうでないとき、もし、buyの損益列がブランクでなければ、前日までの総合損益曲線の値にbuyの損益の値を加えるX20))いずれでもない場合は、前日の総合損益曲線の列の値を返すということです。そして、損益曲線を描くには、損益曲線のデータが返されているセル範囲を選択し、[挿入]→[グラフ]で可能です。