
プログラムトレードの力 を参照) <! - 1 - >
チュートリアル:コーディングするトレーディングシステム 自動トレーディングシステムとは?機械的取引システム、アルゴリズム取引、自動取引またはシステム取引とも呼ばれる自動取引システムは、業者がコンピュータによって自動的に実行することができる取引エントリと出口の両方について特定のルールを確立することを可能にする。貿易の出入りルールは、移動平均クロスオーバーなどの単純な条件に基づいているか、ユーザーの取引プラットフォームに特有のプログラミング言語または認定プログラマーの専門知識を包括的に理解する必要がある複雑な戦略になる可能性があります。自動取引システムでは通常、ダイレクトアクセスブローカーにリンクされたソフトウェアを使用する必要があり、特定のルールはそのプラットフォームの独自の言語で記述する必要があります。たとえば、TradeStationプラットフォームは、
EasyLanguage
プログラミング言語を使用します。一方、NinjaTraderプラットフォームは、 NinjaScript プログラミング言語を使用します。図1は、取引セッション中に3つの取引を引き起こした自動戦略の例を示しています。 (関連する読書については、 世界貿易と通貨市場 を参照) <! - 2 - > [自動化された取引システムでは、さまざまな技術指標を使用して入退出ポイントを定義できます。 Investopediaの技術分析コースでは、トレーダーが自動取引システムを構築する際に使用できる、これらの技術指標とチャートパターンの詳細な概要を提供しています。]
自動契約によるES契約の5分間チャート適用される。
|
<! - 3 - > 一部の取引プラットフォームには、ユーザーが一般的に利用可能なテクニカル指標のリストから選択して、自動的に取引される一連のルールを作成できる戦略構築ウィザードがあります。ユーザーは、例えば、50日間の移動平均が特定の取引商品の5分間のチャート上で200日の移動平均を超えると、長い取引が入力されることを確立することができます。ユーザは、取引がトリガされるときに |
の注文(たとえば、マーケットまたはリミット)を入力することもできます(たとえば、バーの終了時または次のbar)を使用するか、プラットフォームのデフォルト入力を使用します。しかし、多くのトレーダーは、独自のカスタム指標と戦略をプログラムするか、プログラマーと緊密に協力してシステムを開発します。これは通常、プラットフォームのウィザードを使用するよりも多くの労力を必要としますが、はるかに高度な柔軟性を可能にし、結果はより価値のあるものになります。 (残念ながら、成功を保証する完璧な投資戦略はありません。詳細は、 技術指標を使ってトレーディング戦略を開発する を参照してください) ルールが確立されると、取引戦略の仕様に基づいて売買の機会を見つける。特定のルールに応じて、取引が開始されるとすぐに、保護停止ロス、トレーリングストップ、利益目標の注文が自動的に生成されます。急速に動く市場では、この瞬間的な注文入力は、トレーダーがトレーダーに対して動いた場合の小さな損失と致命的な損失の差を意味することができます。 自動取引システムのメリット コンピュータに取引機会の市場を監視させ、取引を実行させることには、
感情の最小化
などの長所があります。自動化された取引システムは、取引プロセス全体を通じて感情を最小化します。感情をチェックすることで、トレーダーは通常、計画に執着しやすくなります。貿易規則が満たされると自動的に取引注文が実行されるため、貿易業者は貿易を躊躇したり質問したりすることはできません。 「引き金を引く」ことを恐れているトレーダーを助けることに加えて、自動トレーディングは、過ちを受ける可能性のある人をあらゆる知覚された機会に売買することを抑制することができます。
バックテスト能力。
-
バックテスト は、過去の市場データに取引ルールを適用して、アイデアの実行可能性を判断します。自動トレーディングのためのシステムを設計するときは、解釈の余地がなく、すべてのルールが絶対的である必要があります(コンピュータは推測できません。何をすべきかを正確に伝える必要があります)。トレーダーは、これらの正確なルールセットを取って、過去のデータをテストして、ライブ取引で金銭を受け取ることができます。慎重なバックテスティングにより、トレーダーはトレーディングのアイデアを評価し、微調整し、トレーダーがリスクの単位当たりに勝つ(または失う)ことが期待できるシステムの
-
期待値 を決定することができます。 (現在の取引戦略を再考するのに役立つヒントをいくつか提供しています。詳しくは、 バックテスト:過去の解釈 を参照してください) 規律を保持します。 貿易ルールが確立され、貿易執行が自動的に行われるため、激しい市場でも規律が保持される。規律は、喪失の恐れや貿易からもう少し利益を上げたいという欲求のような感情的な要因のためにしばしば失われます。自動取引は、取引計画が正確に実行されるため、規律が維持されるようにします。さらに、パイロット・エラーは最小限に抑えられ、100株を購入する注文は、1,000株を売却する注文として間違って入力されることはありません。 一貫性を実現する。
-
取引の最大の課題の1つは、貿易を計画し、計画 を交換することです。たとえトレーディングプランが利益を上げる可能性があるとしても、ルールを無視したトレーダーは、システムが期待していたどんな期待も変えています。時間の100%を勝ち取る取引計画のようなものはありません - 損失はゲームの一部です。しかし、損失は心理的な心的外傷を引き起こす可能性があるため、2〜3回の貿易を失うトレーダーは、次の貿易をスキップすることになります。この次の貿易が勝者であったとすれば、トレーダーはシステムが持っていた期待をすでに破壊しています。トレーディングシステムを自動化することで、トレーダーはプランをトレードすることで一貫性を得ることができます。 (取引ルールなしでは災害を避けることは不可能です。詳しくは、
-
10トレーディングプラン作成の歩み を参照してください) 注文入力速度の向上。 コンピュータは変化する市場状況に即座に対応するため、自動化されたシステムは取引基準が満たされるとすぐに注文を生成することができます。数秒前に取引に出入りすることは、取引の成果に大きな違いをもたらす可能性があります。ポジションが入力されるとすぐに、ストップロスや利益目標を含む他のすべての注文が自動的に生成されます。市場は迅速に動くことができ、取引が利益目標に達するか、ストップロスレベルを超えてぶつかって注文を入力することもできます。自動取引システムは、これを防止します。 多様化する取引 自動化された取引システムにより、ユーザは複数の口座または様々な戦略を一度に取引することができる。これは、ポジションを喪失することに対するヘッジを生みながら、様々な商品に対してリスクを分散させる可能性があります。人間が達成するために信じられないほど困難になるものは、数ミリ秒でコンピュータによって効率的に実行されます。コンピュータは、さまざまな市場の取引機会をスキャンし、注文を生成し、取引を監視することができます。
-
自動トレーディングシステムの短所と現実 自動トレーディングシステムには多くの利点があるが、トレーダーが認識すべきいくつかの落とし穴やリアルタイムがある。
- 機械的故障。 自動取引の背景にある理論は、ソフトウェアを設定し、ルールをプログラムし、取引を監視するという単純なものに見えます。しかし、実際には、自動取引は洗練された取引方法ですが、間違いはありません。取引プラットフォームに応じて、取引注文はサーバーではなくコンピュータ上に存在する可能性があります。つまり、インターネット接続が失われた場合、注文は市場に送られない可能性があります。また、戦略によって生成された「理論上の取引」と、実際の取引に変わる注文入力プラットフォームコンポーネントとの間に相違がある可能性があります。ほとんどのトレーダーは、自動取引システムを使用する際に学習曲線を期待する必要があります。プロセスが洗練されている間は、小さな取引サイズから開始するのが一般的には良い考えです。
監視
。コンピュータの電源を入れて一日中出発することは素晴らしいことですが、自動取引システムでは監視が必要です。これは、接続性の問題、電力損失やコンピュータのクラッシュ、システムの不具合など、機械的な障害の可能性があります。自動取引システムでは、誤った注文、注文の紛失、または重複した注文が発生する可能性のある異常が発生する可能性があります。システムが監視されている場合、これらのイベントを迅速に特定して解決できます。
-
過剰最適化。 自動取引システム特有のものではないが、バックテスティング技術を採用しているトレーダーは、紙の上で見栄えが良く、活気のある市場でひどく機能するシステムを作り出すことができる。
-
過剰最適化 は、ライブ取引において信頼性の低い取引計画を生成する過度のカーブフィッティングを指します。たとえば、テストされた履歴データに関する優れた結果を達成するための戦略を調整することは可能です。トレーダーは時折、間違ってトレーディングプランが100%近い収益性の高い取引を行うべきであると想定しているか、または実行可能なプランであることを決して経験してはいけません。このように、パラメータを調整して「ほぼ完璧」なプランを作成することができます。これは、ライブマーケットに適用されるとすぐに完全に失敗します。
- バックテストとフォワードテスト:相関の重要性 を参照) サーバーベースの自動化 トレーダーにはオプションがありますStrategy Runnerなどのサーバーベースの取引プラットフォームを介して自動トレーディングシステムを実行することができます。これらのプラットフォームは商用戦略を頻繁に提供し、トレーダーが独自のシステムを設計できるようにするウィザード、またはサーバーベースのプラットフォーム上に既存のシステムをホストする機能を提供します。料金を支払うと、自動取引システムは、サーバー上に存在するすべての注文を検索し、取引を監視し、実行し、監視することができます。結論 様々な要素を訴求しているが、自動取引システムは、慎重に実行される取引の代用品とはみなされるべきではない。機械的な障害が発生する可能性があるため、これらのシステムでは監視が必要です。サーバーベースのプラットフォームは、機械的な障害のリスクを最小限に抑えることを望むトレーダー向けのソリューションを提供する可能性があります。 (関連資料については、 初心者のための日取引戦略
を参照)