ロシアの株式市場でのアルゴリズム取引:傾向と技術

画像



少し前まで、株式市場Market Labに関する出版物は、ITinvestで取引ロボットを使用して取引所で作業するためのインフラストラクチャを開発しているYuri Maslovへのインタビューを公​​開しまし 。 Habréのブログでは、ロシアの株式市場で使用されているテクノロジーに関するよくある質問への回答に焦点を当てたこの会話からの抜粋を公開しています。



アルゴリズム取引の利点



特別なロボットを使用して取引所で取引するトレーダーの数の増加は、世界的な傾向です。 誰もがこの事実に満足しているわけではなく、多くはアルゴリズム取引が有害な投機であると考えていますが、それは市場の流動性を維持するのに役立ちます。 高周波トレーダー(HFT)の数と市場への影響は、一般的な市場法によって決定されます。これについては、ロシアでのアルゴリズム取引の展望に関するトピックで書きました。



画像



さらに、貿易でのテクノロジーの使用により、金融市場で働くときに生じる主な問題の1つである心の感情の優位性をなくすことができます。これは、エラーや金銭の損失につながる可能性があります。 さらに、株式市場の状況は非常に急速に変化するため、人がそれに反応する時間がない場合があります。ロボットはそれほど遅くありません。



たとえば、かなり前の2002年から2003年です。 ガスプロムの先物に対するガスプロムの単純で厳しい裁定取引を行いました。 年間に非常識な関心を集めました。 しかし、2008年には、このニッチ市場はすでにアルゴリズムに完全に占有されていました。 2011年9月以降、このニッチは高周波アルゴリズムに完全に占有されました。


ロボットを取引するにはどれくらいのお金が必要ですか



取引戦略は、取引所で取引するための資金が非常に多くない場合、アルゴリズム的である場合があります。 この場合、アルゴリズム取引にはさまざまな領域があることに注意する必要があります。 スピードに対する需要が増えていない種類もあります。たとえば、市場の理解から利益を得るインテリジェントな戦略などです。 頻繁な取引(市場のすべての人を追い抜く戦略)が必要な場合、または微細構造モデルを使用する予定の場合、入場券は、高価なインフラストラクチャとそれをサポートするコストが必要になるため、より高価です。



画像



ユーリ・マスロフ



実際の市場での戦いに突入する前に戦略をテストし、その収益性を計算する必要があります(原則として、これはMS Excelでも実行できます)。 この収益性は、理想的には、トレーディングロボットの開発と保守のコスト(プログラマのサービスに対する支払い、または独立開発の場合は時間コスト)をカバーするはずです。



10万ルーブルで始まった人々が市場にいます。 たぶん、彼らはより良い時期に始まったばかりかもしれません。 今日、500,000ルーブルから100万ルーブルまでの量は、既にアルゴリズム戦略の使用を開始できる入力しきい値です。 同時に、2万ルーブルの戦略をアルゴリズム化できる便利なツールがあります。 市場にはさらに多くのものがあります。 大幅な開発コストなしでアルゴリズムを作成できます。



また読む:「 インタビュー:C#とC ++が株式市場で利益を上げる方法



これらには、 TS LabシステムまたはCofite製品が含まれます。 そのようなソリューションはますます増えています。その本質は、開発を時間の経過とともに簡素化するスクリプト言語の使用にあります。 アルゴリズムの迅速な実装のために「シャープ化」されています。 そのようなスクリプト言語の例は、Modulus Financial Engineeringのアメリカ人によって作成されたTradeScriptです。 このテクノロジーは、 SmartXターミナルを作成するためにライセンスされています(OEM)。 この言語は非常にシンプルで、マニュアル(またはHabréの出版物-one、 two )を読むだけで、短時間で取引戦略を説明できます。



往復アプリケーション



取引ロボットの速度はさまざまな要因に依存します。 最も重要なものの1つは、使用されるデータ転送プロトコルです。



スポット市場でモスクワ取引所と連携するために使用されるプロトコルを使用してください。 さまざまな接続方法があります。「ネイティブ」交換プロトコルは、 ネイティブ 、FIX接続とも呼ばれ、ブローカー取引システムを介して機能します。 メガネの先駆者になろうとする人は、FIX接続を使用しますが、ネイティブプロトコルではありません。


仲介システムを介して接続する場合、通常、速度は遅くなります。 MICEX株式市場でFIXについて話す場合、交換部分での往復は約300-350マイクロ秒であり、通信チャネルとクライアント機器の遅延を考慮した完全なアプリケーションパスは、大幅に大きな値で表すことができます。



画像



これらの数値はすべてのブローカーで同じです。これらは、取引所へのチャネルの品質、インストールされている機器、およびコア内のアプリケーションの処理速度に大きく依存します。 「ネイティブ」交換プロトコルTEAPを使用する場合一般的な遅延はより大きく、範囲は420μsです。



ITinvestトレーディングシステムを通過するアプリケーションを送信する時間(クライアントからゲートウェイに受信された瞬間から、クライアントに回答が与えられる瞬間まで、インターネットを介して作業しているときは、クライアント機器へのブローカーゲートウェイ)は1.5〜2.5ミリ秒です。 同時に、FIXプロトコルで作業し、ITinvest リスク管理サーバーに接続することを含む、高頻度トレーダー向けのソリューションがあります。 リスク管理には数マイクロ秒かかり、交換ラウンドトリップの合計数では見えません。



開発技術



経験によれば、ユニバーサルプロセッサはロシア市場で取引ロボットを作成するための最良の技術的ソリューションであることが示されています。 さまざまなソリューションの適用範囲は限られています。FPGAで迅速な戦略を構築できますが、複雑な計算には汎用プロセッサを使用することをお勧めします。 GPUには欠点があります。たとえば、遅いメモリと高い電力消費です。 ローカル市場でのユニバーサルプロセッサ向けのロボットの最適化は、現在、主要なソリューションです。



オペレーティングシステムについては、パフォーマンスを求める人が増えるほど、Linuxの使用に関心を持つようになります。 実用的なビジネスアイデアがある場合は、速度を上げると収益を増やすことができます。 しかし、高級プログラマーを開発して使用するコストは、これらのコストを回収できないかもしれません。 原則として、Windowsでもかなり高速なソリューションを作成できます。 Linuxは、ユーザートレーダのニーズを満たすようにカスタマイズされているため、優れています。新しいチップを備えた新しいカーネルが登場します。 これらの問題では、Windowsの方が保守的です。


最近、C#が人気を集めています。 開発は非常に簡単で、専門的な教育さえ受けておらず、基本的な開発スキルしか持たない人でも、C#を習得してロボットアルゴリズムを作成できます。 金融市場でのより深刻な開発には、CおよびC ++が使用されます。これにより、最適なコストで許容可能な速度を得ることができます(厳しい場合は、アセンブラーになります)。 初心者の株式市場の開発者は通常C#を使用します。



箱入り製品を使用してロボットを作成する必要がありますか



一方では、そのようなソリューションの利点は、開発時間を節約できることです。 一方、独自のロジックを備えた「ブラックボックス」であり、クリエイターに相談せずに一部の製品を整理することは非常に困難です。 しかし、取引ロボットの開発を容易にするという事実は否定できません。 ほとんどのブローカーには、アプリケーションをすばやく簡単に作成できる便利なインターフェイスがあります。 たとえば、ITinvestにはSmartCom APIがあります。



彼のマニュアルには例が含まれており、C#を所有している人は、ロボットを十分にすばやく書くことができます。 同時に、高頻度のトレーダーはほとんどの場合、自分自身で取引システムを作成します。この方法により、独自の製品を入手し、市場でより多くの利益を期待できます。



今日は以上です。ご清聴ありがとうございました。 また、Habrユーザーに、株式市場について読んでみたいトピックを尋ねたいと思います。 コメントで応募と質問を受け付けています!



PSタイプミスやエラーに気付いた場合は、個人的なメッセージを書いてください。すぐに修正します。



関連する投稿とリンク:






All Articles