株式保有比率の管理でより良い結果が得られる?

Quant Analyzer のエクイティ制御機能により、さまざまなエクイティ手法をシミュレートおよびテストできます。 株式曲線を利用して取引ロジックを制御する.

それは具体的にどういう意味ですか?
この戦略は過去のパフォーマンス(これまでの株式収益曲線)を分析し、将来の取引方針を決定するのに利用できます。.
前提は単純です。過去の株式パフォーマンスを分析することで、将来の収益性を改善できるでしょうか?

インプットとして、パフォーマンスを改善しようとするための戦略(結果)が必要です。この投稿では、以下の株式曲線が表示されたTest_EURUSD_strategyサンプル戦略を使用します。.

戦略のパフォーマンスを向上させる際には、通常はデフォルトのアプローチとして、1つまたは複数のマーケットフィルターを追加したり、戦略のエントリーやエグジットの改善、損失の多い取引の数を減らし、勝ちの取引の数を増やすことです。.

しかし、この記事の焦点となっているもう一つの興味深い選択肢は、システムのエクイティカーブの管理です。言い換えれば、過去の戦略パフォーマンスを分析し、この情報をもとに次のトレードをすべきかどうか判断します。.

株式曲線管理の例 – 移動平均を用いたシンプルなアプローチ
アイデアはシンプルです。戦略によって生成されたエクイティカーブに20ピップの移動平均を加算します。次に、以下のルールに従ってください。

  • 現在の株式価格曲線が移動平均を下回っている場合、新しいトレードを開設するなら、そのトレードを確定取引として取り組むべきです。
  • 現在の株式価格曲線が移動平均を下回っている場合は、本番取引は控えて紙取引で修正してください。

Quant Analyzerで株式保有状況をシミュレートする

Quant Analyzerでは、これを簡単にシミュレーションできます。 株式保有比率管理 tab。使用するエクイティコントロールタイプを選択し、そのパラメータを設定して、「適用」をクリックするだけです。.
私たちの例では、期間が20の移動平均を使用します。.

クリックした後に 申請する 2つのカーブが得られます。最初のエクイティカーブは変更なしのものです。もう1つは、「コントロールされた」エクイティカーブで、このルールを取引に適用しました。.
赤いコントロールラインも確認できます。弊社の場合、取引が成立するかどうかを決定する原資産の20ピップ移動平均です。.

特別株式統制チャート
チャート上のエクイティ曲線は特別な方法で表示されます。各ポイントは新しい取引であり、その時点でのエクイティレベルは実際の数値です。 取引開始時の口座残高.
これにより、株式曲線を使用して取引を管理できます。つまり、取引の開始時に口座残高に応じて取引を行うかどうかを決定できます。これは現実と同じです。.

同じ時間に複数の取引がオープンした場合、それらはすべて一つの取引ポイントにまとめて表示されます。.

チャートの最下部の赤い太い線は、株式保有によって取引が取り止められたり変更されたことのない期間を明確に示しています。.

上のチャートからすぐに分かるように、このようにエクイティコントロールを採用しても戦略の結果は改善されず、むしろ悪化します。詳細を見て、チャートを最初の数ヶ月まで拡大してみましょう。.

元の株式ラインと管理された株式ラインは、その時点まで同じです。 1. それ以来、株式の価値は異なる:

  • オリジナルのエクイティ・カーブからわかるように、この戦略は引き続き取引を行っており、さらなる損失を被っている。
  • コントロール戦略では、次の取引は行われません。なぜなら、取引開始時の資本は移動平均を下回っているからです(赤線)。つまり、この戦略は取引を通過させ、元の資本が移動平均を上回るまでより大きな損失に陥るのを防ぎます。.

したがって、この拡大したサンプルでは、エクイティコントロールが機能していることがわかります。これは、元のエクイティカーブが移動平均を下回っていたときに、トレードを逃すことで戦略がより大きな下落幅に陥るのを防いだのです。.

では、なぜ管理戦略による全体的な結果は元の戦略よりも悪いのでしょうか?
2010年3月頃から始まるチャートの別の部分を見てみましょう:

また、元のラインとコントロールラインの両方が、その時点まではほぼ同じである。 2.. それ以降、「コントロールされた」戦略は本来の戦略と比較してパフォーマンスを失い始める。.

なぜですか?
当社のルールでは、そのエクイティが移動平均を下回っているときに戦略は取引を行わないように規定されています。つまり、これはさらなる損失を防ぐために一部の損失を回避する可能性があるが、 また、元の戦略が以前の損失から回復するのに役立った勝率の高い取引の一部をスキップすることもできます。.

弊社の場合、非常に収益性の高い取引を逃しています。 3., 4. そして 5. なぜなら、これらの取引が開始されるべき時期に、元のエクイティ・カーブは移動平均を下回っていたからです。.
コントロールされた戦略は、元の資本が移動平均を上回るまで、次のトレードを開始しない。.

この例の結論

当社のエクイティ・コントロール・シミュレーションによると、このようなエクイティ・コントロールは何も改善しない。実際、適切に使用されなければ、利益をほとんど常に減少させ、デッドロウを増加させるだけだ。.

でも、何か他のことを試してみるならどうでしょうか?
株式が平均を下回っているときに取引を逃すのではなく、その規模を倍増させることができます。ルールは再びシンプルになります:

  • 現在の株式価格曲線が移動平均を下回っている場合、新しいトレードを開設するなら、元のサイズでトレードをオープンする。
  • 現在の株式価格曲線が移動平均を下回っている場合、新しいトレードを開設するには、そのトレードのサイズを2倍にして開く必要があります。

この場合、数回の損失の後には収益性の高い取引が起こるはずであり、その場合にはその利益を倍増させるために倍の金額を投入するはずです。.

クアンタス・アナライザーを拡大
新しいカスタムエクイティコントロール機能を作成するには、 Quant Analyzerの最新バージョンへの拡張性.
Quant Analyzer v3では、独自のエクイティ制御機能のプログラミングや独自のアイデアのテストが可能になりました。この例では、以下のダウンロード可能な特別なエクイティ制御機能を使用します。.

MovingAverageAddContracts.java

このファイルをダウンロードし、[Quant Analyzer]/extend/code/EquityControlフォルダに配置して、プログラムを再起動するだけです。.

新しいオプションが表示されるはずです 移動平均の追加契約 株式制御タイプの選択に追加されました。パラメータはそのままにできます。パラメータ「Coef」は、株式が移動平均を下回っている場合に取引サイズを増やす係数を表します。式が使用されます:

新しい取引サイズ = 系数 * 元のサイズ;;

2に設定すると、取引サイズを2倍にします。.
「適用」をクリックすると、シミュレーション結果を確認できます。.

今回は戦略による純利益が大幅に増加しましたが、同時に引き下げ幅も少し大きくなりました。.
過去の株式チャートを基にトレードを管理することで、戦略のパフォーマンスに大きく影響を与える部屋があるという事例を例にとることができます。.

最終的な考え

この記事で試したアプローチと例は、戦略でエクイティコントロールを活用する多くの可能性の一つにすぎません。.
Quant Analyzerには2つのその他の株式管理機能が付属しており、独自のアイデアをテストするために独自の機能を作成することも可能です。.

注意すべき点
株式保有権のいくつかの不利な点については、認識しておくべきです:

  • EAでは実装するのは非常に難しいです。 – Quant Analyzerではこの種の制御を簡単にシミュレートできますが、それをEAに実装するのはまた別の作業です。実際、自分のEAで株式を基にトレードを管理するという類似した手法を使うEAは知りません。.
  • それは元の戦略の論理次第です。 – すべての戦略で同じ結果が得られるわけではありません。リスク・リターン比(SLとPTのサイズ)、株式チャートの「見た目」や急な傾き、連続して勝ったり負けたりする取引の数など、様々な要因によって異なります。.
  • 「チョップ」では時々うまく機能しないことがあります。“ – 株価が横ばいになると、通常の戦略よりも多く損失を出す可能性があり、その理由は株式が平均を下回っているため、有利な取引を逃してしまう傾向があるからです。.

全体として、この手法は検討する価値のある技術です。 Quant Analyzerでは、戦略にその手法を組み込む作業を開始する前に、その潜在的な結果をシミュレートすることができます。.

6 コメント
最古の
最新 最も投票された
ハニ・ハムダン
11. 12. 2021 10:24 am

理論的には明確ですが、どうやって実行するのでしょうか?この手法は自動化が可能なのでしょうか?つまり、曲線がインジケーターを超えた時点で戦略が取引を停止するのでしょうか?そして、どうやって実行するのでしょうか?

Tomas Matejka
管理者
返信する  ハニ・ハムダン
13. 12. 2021 5:45 pm

QuantAnalyzerでは、株式管理取引を管理するコードを提供することはできません。株式管理機能はEAに直接手動で実装する必要があります。

エド・カス
返信する  Tomas Matejka
21. 1. 2023 7:23 pm

QuantAnalyzerは素晴らしいツールです。実際に取引にエクイティコントロールカーブを適用できるのは、次のステップです。貿易ステーションのエクイティコントロールアルゴリズムについて、ご意見をお聞かせください:
https://community.tradestation.com/Discussions/Topic.aspx?Result=1&Topic_ID=119576&SearchTerm=equity+intraday&txtExactMatch=

これまでのところ、このアルゴリズムが成功を約束する唯一のものです。このプロセスを実行するための指示は正確に従う必要があります。.

ご意見ありがとうございました。.

エド・カス
返信する  ハニ・ハムダン
21. 1. 2023 7:19 pm

ご覧ください コメント画像

tradestatonヘルプフォーラムで。.

私は現在その方法を試用しており、今のところうまくいっているようです。.

エド・カス
21. 1. 2023 7:18 pm

TSサポートのトピックをフォローして、ストラテジーの「エクイティコントロール」の使い方を見つけました。.
サンプルをダウンロードし、指示に従ってTにインストールしてください。.
少なくともこの例では、株式の行を制御するコードは問題ありません。.
ダウンロード、テスト、報告をお願いいたします。.

https://community.tradestation.com/Discussions/Topic.aspx?Result=1&Topic_ID=119576&SearchTerm=equity%20intraday&txtExactMatch=

コメント画像投稿 – 2012年4月16日 15:02:44コメント画像  コメント画像  コメント画像 株式曲線取引テンプレートと例

https://community.tradestation.com/Discussions/DATA/20120418211655EC_BeforeAndAfter_EC トレード・アプライド.JPG

https://community.tradestation.com/Discussions/DATA/20120416145356goose エクイティカーブ取引アーキテクチャ.JPG

このテンプレートおよび例の目的
ここに掲載されている「エクイティ・カーブ・テンプレート」と「例」は、エクイティ・カーブのシンプルなテンプレートと例です。
グローバル・ディクショナリを使用してティックレベルで取引を行うことができ、そのアーキテクチャも提示されています。
topic_id=119190の投稿者 gooseによって。使用されるシンプルなアルゴリズムは、次のアルゴリズムに置き換えられることを意図しています。
これは取引されている株式曲線の特徴に適用されます。.

このテンプレートおよび例の制限事項
TimeStampsを搭載したこのGlobalDictionaryソリューションは動作しており、EC取引に幅広く利用しています。
開発です。しかし、設定には経験豊富なプログラマーが必要で、また例を出すには時間がかかります。
作業を行い、テンプレートの例のストラテジーコードをユーザーのストラテジーコードに置き換えます。これは、
一般的なユーザーにとって良いソリューションです。 mmillar氏が指摘するように、ELC/ADEは非常に推奨されるソリューションです。.

機能における戦略シミュレーションの代替手段(2012年7月18日の更新)
私は、10年間にわたる戦略のすべての過去の取引をマッチングする関数の中で、リミットオーダーを使用する連続実行戦略のシミュレーションを完了しました。この関数は連続的に実行され、EC曲線とアルゴリズムが形成されます。このEC曲線とアルゴリズムは、戦略のオン/オフ切り替えに使用できます。過去のすべての取引をすべてこの関数にマッチさせるのは容易な作業ではなかったため、多くの微妙な点や問題点が解決されなければなりませんでした。以下に、そのいくつかをご紹介します:

1) 市場注文を発行した際に、市場注文の発行時にCC(現在の契約の変数)を変更しないでください。代わりに、次のバーでCCが変更されるようにフラグを設定してください。.
2) リミットオーダーが満たされたと検出された場合は、その時点でCCを変更してください。次のバーまで待つ必要はありません。.
3) 複数の条件がある場合、条件が false になるとバーが生成されるため、そのバーに注文が発行されないようにするため、コードを追加する必要があります。しかし、フィルは引き続き検出できます。この原則は、トレード時間条件のような条件にも適用されます。限月注文にはトレードの実行用と、トレードが実行された場合に監視用のバーが1つ追加されたものという2種類のトレード時間条件があります。.

これで、この戦略は関数を呼び出して、それに応じてオンとオフを切り替えることができます。インジケーターは同じ関数を使って、関連するポイントや指標をプロットすることもできます。.

説明
株式曲線取引テンプレートと例
バージョン 1.23 (2012年5月8日):最初の辞書アクセス前に受信機に2バーストの遅延を追加しました。,
GlobalDictionaryの作成とデータ入力が完了するまで、アクセスできないようにする。.
ruletrader7320によってコード化およびテストされました
投稿日:2012年4月16日
最終更新:2012年5月8日
クレジット:
   1)エクイティ・カーブ・トレーディング・アーキテクチャ用のガチョウ
   2) GlobalDictionary の作成時に、Topic_ID=120035 の最初の引数に問題が生じる問題を解決するためのガチョウ
参考スレッド:Topic_ID=119190
目的:ティックレベルでのエクイティカーブ取引のテンプレートと例、ガースによるアーキテクチャ

コンポーネント:「株式曲線取引テンプレートと例」は以下の3つの部分で構成されています。
2つのチャートに配置された戦略ファイル。_ecStratTemplate&Example戦略が配置されています。
異なる入力設定を持つ各チャートで:

図表1:
_ecStratTemplate&Exampleでは、このチャートではAutoON入力が常に false に設定されています。.
_ecMonitor-sender(IOG) バックテストでは backtestON を true に設定してください。.

図表2:(最初の図表と同一である必要があります)
_ecStratTemplate&Exampleでは、このチャートではAutoON入力が常にtrueに設定されています。.
_ecMonitor-receiver(IOG)。.

問題の診断を支援するために、2つの診断戦略が用意されています。.

インストール
1) TradeStation 9.1または最新バージョンにアップグレードしてください。まだインストールしていない場合は、最新バージョンにアップグレードしてください。.

2a) 5つの戦略をインプットする:_ecStratTemplate&Example、_ecMonitor-sender(IOG)、_ecMonitor-receiver(IOG)、,
そして、以下のELDから2つの診断結果:.
添付ファイル:DATA/20120508184752_EC_EQUITYCURVETRADING_TEMPLATEANDEXAMPLE_V1.23.ELD 40527 バイト

2b) あなたの戦略が IntraBarOrderGeneration を使用している場合、ecStratTemplate&Example を編集して、以下の内容を変更してください:
IntraBarOrderGenerationが true になります。[Intrabarordergeneration = true]

****** QUICK START TO GET EXAMPLE WORKING ******

3) 同じ形式の2つのチャートを並べて新しいワークスペースを作成します。以下の形式で設定します。
      シンボル @ES
      60分間のバー間隔
      締め切り:2012年4月12日
      5ヶ月前
      タイムゾーン:変換(CT)

      両方のチャートをセットした後、それぞれの設定を確認して、正しい設定になっていることを確認してください。
      (問題をすぐに解決するのが良いです。それから、後でなぜそれが動作しないのかを理解しようと数時間費やすのは無駄です。)

4) 次の2つの戦略を適切なチャートに挿入し、指示に従って iputs を設定します。
      a) _ecMonitor-sender(IOG)をセットし、入力設定 backtestON を true に設定, 、そしてステータスをオフに設定します(少し時間を節約するため)。.      
      b) _ecStratTemplate&Example、そして入力設定 AutoON が false になります。.. そして送信者のステータスを「オン」に戻します。.

      注1:両方の戦略でステータスが「オン」になっている必要があります。そして、右側のチャートには現在取引が表示されるはずです。.

5) 左側の図に以下の2つの戦略を挿入し、指示に従って入力値を設定してください。.
      a) _ecStratTemplate&Example、そして入力値を設定する AutoONがtrueになります。. まだ設定されていない場合。.
      b) _ecMonitor-receiver(IOG):入力設定なし

      注2:これで左側のチャートには取引が表示されるはずです(ただし右側のチャートには表示されていない取引がいくつか表示されるはずです)。.
      
6) 右側のチャートと左側のチャートの株式曲線を表示します。左側のチャートでは取引数が少ないはずです。
(ただし、IOG の変更により、上部の現在のカーブと一致しない)。.
もしこれがうまくいかないなら、,
      a) 2 つのチャートのすべての戦略をオフにします。.
      b) 次に右側のチャートの戦略を有効にして、取引の状況を確認します。.
      c) 右側のチャートにトレードが表示されたら、左側のチャート(受信側)でストラテジーを有効にします。.
      d) 左側のチャートではトレード数が少ないような曲線を描く必要があります。.
      注:これを繰り返すには、左側のチャートの戦略を実行する必要があります。 後に 右側のチャートの戦略は
      GlobalDictionaryを完成し、データを入力しました。(次のセクションおよびパートdのステップを参照してください。)

******バックテストとライブ取引******

7) バックテストおよびライブ取引の設定.
   バックテスト用:
      a) 入力を設定する backtestON を true に設定 in the_ecMonitor-sender(IOG) 戦略において。.
      b) 受信チャートでオートメーションをオフに設定します(_ecMonitor-receiver(IOG)を含むチャート)。,
      そして、_ecStratTemplat&Exampleが含まれており、入力のAutoON設定はtrueに設定されています)。.
      c) ライブデータを受信するチャートではバックテストを行うことはできません。. 期限を定めてください
      TradeStationに接続している場合は、現在の日付より前のチャートを表示します。.
      d) バックテストの間における戦略の変更に伴う連続したバックテストを実行するための手順:
      – 1. 左側のチャート(受信機)で、ステータスを OFF に設定して、両方の戦略をオフにします。
      – 2. 戦略(ecStratTemplat&Example)に希望の変更を加える。確認する。.
      – 3. 右側のチャートの戦略は有効で、もう一度実行されるべきです。そのため、右側のチャートを監視してください。.
      – 4. 右側の戦略が実行完了した後(そして GlobalDictionary が更新される)、,
      —左側のチャートの戦略を有効にして、それらは新しい GlobalDictionary の値に対して実行されます。.
      – 5. 左側のグラフの戦略が実行され、パフォーマンスが分析されたら、
      —次のサイクルに向けて左側のチャートに戦略を準備する(つまり、これらの戦略は左側のチャートに表示される)。
      —chartは実行されません 後に 右側のチャートの戦略を実行します。次に、手順を慎重に繰り返します。.
   ライブ取引の場合:
      a) 入力を設定する backtestON を false に設定 in the_ecMonitor-sender(IOG) 戦略において。.
      b) 左側の受信チャートでオートメーションを「オン」に設定(「フォーマット分析…」ウィンドウ)し、「AutoON」を「true」に設定してください。.

****** REPLACING EXAMPLE CODE WITH YOUR CODE ******

8) 例が動作したら、コードをそのまま使用してその例の戦略を更新できます。
このセクションの最後のステップ(d)を除くすべて。または、例と同じような新しい戦略のセットを作成することもできます。
戦略を定義し、それから Designer Generated と初期化コードを使用して新しい戦略を更新します。
以下の手順に従って、お客様のコードを作成してください:
   a) 新しい3つの戦略を作成し、この例の送信者、受信者、および戦略コードをコピーして貼り付けます。.
   b) 各戦略について、デザイナー生成コードと初期化コードを次のように設定します。
      1. 新しい戦略のエディターウィンドウを切り替えて、「ビュー/ツールバー/プロ Proパティ」を選択します。,
      または、上部のツールバーにある「ProProperties Window」アイコンをクリックしてください。 ProPropertiesウィンドウが表示されます。.
      2. プロパティウィンドウの「イベント」アイコン(電光石火のアイコン)をクリックします。.
      3. 「Initialized」の右側の空白の「値」フィールドをダブルクリックすると、以下の内容が表示されます。
      そのフィールドにデータを入力します: “AnalysisTechnique_Initialized …. これがデザイナー生成コードになります
      そして、戦略内の初期化イベントコード。.
      4. 「method void AnalysisTechnique_Initialized …」から始まる、最上部の新しいコードブロックに注目してください。.
      この行を継承し、さらに下に位置する同じまたはほぼ同じ行を置き換えます。
      その行を削除し、以下の手順で新しいコードブロックを削除します:
      – 同じように始まるコードの下の方にある古い行を削除します。.
      – 新しい行をコピーして、古い行が削除された場所へ貼り付けます。.
      – トップにある新しいコードブロックを削除しました。必要なのはその1つの新しい行だけでした。.
   c) 次に、新しい戦略セットが例と同じように正確に機能することを確認します。
   手順3から6までを順に実行し、まず2つの新しいチャートを作成します。(すでにこの手順を行っているので、
   例として、これは時間がかかりません。開始点とレビューの確認を行います。
   正しいバックテストONおよびAutoON設定。)
   d) 各戦略の編集ウィンドウで、「REPLACE」を検索し、例を置き換えるか更新します。
   REPLACEに従った独自のコードと設定を含むテンプレートコード。.
      注:この手順には高度なプログラミングスキルが必要となります。.

******問題解決******

9) 診断と問題解決:問題が発生した場合は、まず入力内容を確認してください。
設定、チャート設定(同じように設定してください)、そして以下のオフとオンのシーケンスを繰り返します:
      – 2 つのチャートのすべての戦略をオフにします。.
      – 次に、右側のチャート(送信者)の戦略を有効にして、取引の状況を確認します。.
      – 右側のチャートにトレードが表示されたら、左側のチャート(受信者)で戦略を有効にします。.

   チェックと電源のオン/オフのシーケンスで問題が解決しない場合は、以下の診断テストを実行してください。
      a) 右側のチャートに _ecDiagnosticSender を挿入します。(ステップ2ですでにインポート済み)
      b) 左側のチャートに _ecDiagnosticReceiver を挿入します。(ステップ2ですでにインポート済み)
      c) 例外が生成されない場合は、お好みのエディタ(例:ノートブック)を使用して以下のファイルを開きます。
      c:\ecDiagnosticChart.txt。.
      そのファイルには、次の2行(異なるタイムスタンプ付き)が含まれているはずです。.
      1120412 2015 Chart_01 2012年4月19日 12:07:54 PM
      1120412 2015 Chart_02 2012年4月19日 12:07:57 PM

      d) 診断ファイルが例外を発生せず、出力ファイルに正しい2行が表示される場合、
      診断テストは合格しており、アプリケーションは動作するはずです。インストールが間違っていたり、設定が間違っていたりする可能性があります。
      失敗しました。まずインストール済みの戦略とチャートをすべて削除し、コンピューターを再起動してTradeStationを再起動してください。
      そして、新しいチャートで慎重に新規インストールを行います。.
      
      e) 診断が失敗した場合、または再起動および新規インストールでも問題が解決しない場合は、追加のサポートを依頼してください。
      フォーラムでのサポートや、さらなるサポートの必要性について著者に直接メッセージを送ってください。詳細に記載するようにしてください。
      問題の根本原因、および正確なエラーメッセージ、失敗したステップ、入力設定、およびその他の情報を含めて、
      チャートの設定、コードに変更があった場合などなど。.
///////////////////////////////////

SPYを使って試した結果、動作するようになりました。まだ実際の取引では使用していません。.

コメント画像

ご意見をお聞かせください。.
最終的には株式の保有比率の調整が可能になるだろう。.

マニ
12. 12. 2024 1:01 am

素晴らしい!!

続きを読む