1. Учиться
  2. /
  3. Courses
  4. /
  5. Rで学ぶ金融トレーディング

Connected

Exercise

sigCrossover を使う

この戦略ではロングのフィルターが必要ですが、それだけでは取引を実行する条件としては不十分です。ただし、その条件が成り立たなくなった瞬間に、戦略は一切ポジションを保有すべきではありません。この演習では、sigCrossover() 関数を使って、上で指定したルールの逆を実装します。

常に条件が成り立つかどうかを判定する sigComparison() と違い、sigCrossover() はシグナルが「最初に」発生した瞬間にだけ陽性を返し、その後は返しません。これは、取引の起点として使うシグナルに適しており、多くの場合で何度も取引が発生するのではなく、1回だけ起動させたいからです。

ここでは、SMA50 が SMA200 を下抜けることを指定して、sigCrossover() 関数を実装します。このシグナルは移動平均フィルターが「この戦略がポジションを持つのに適さない環境」と判断したときにポジションを手仕舞うため、filterexit と名付けます。

Инструкции

100 XP
  • add.signal() を使って、SMA50 が SMA200 を下抜ける sigCrossover を追加してください。
  • このシグナルには filterexit というラベルを付けてください。