はじめに
cTrader Algoは、カスタムインジケーター、cBots、およびプラグインを含むさまざまな自動取引ツールを利用できるオールインワンソリューションです。
注意
新しいインディケーター、cBots、またはプラグインの開発は、cTrader Desktopを使用する場合にのみ可能です。
cBotsの定義
cBotsは、cTrader内で実行され、自動的に取引操作を実行および管理するプログラムです。cBotsは、既存のポジションを修正したり、特定の条件に応じて指値注文を出したりするなど、ほぼすべての取引活動を行うように設計できます。
カスタムインジケーターの定義
カスタムインジケーターは、自分で開発するか他の開発者から調達できる拡張機能の一種です。カスタムインジケーターは、価格データ、チャートの描画、アカウントのプロパティなどを使用してcTraderのチャート上で計算を実行するために使用されます。
インジケーターは、これらの計算結果をチャート上、別のタブ、またはAPIが提供する機能を使用して設計できるカスタム出力方法で表示できます。
プラグインの定義
プラグインは、cTraderをさまざまなサードパーティサービスと統合したり、ファーストパーティのcTraderサービスを使用するためのカスタム手段を提供したりするアルゴリズムです。cBotsやカスタムインジケーターとは異なり、プラグインはチャートに取り付けられることはありません。その代わり、cTrader UIの特定の定義済みエリアに表示される必要があります。
注意
プラグインは、インストールまたはビルドされるとすぐにcTrader UIの指定されたエリアに追加されます。
cTraderアルゴリズム開発の開始方法
カスタムインジケーターやcBotsを開発するには、C#プログラミング言語と.NETプラットフォームを使用する必要があります。
インジケーター、cBots、およびプラグインを作成するには、C#と.NETの基本的な理解が必要です。この技術文書には、これらのツールに関する基本情報を含む「C#および.NETの基本」セクションがありますが、外部リソースで関連するチュートリアルや技術文書を検索することもお勧めします。
技術文書
この技術文書は、最初から最後まで読むことも、興味のあるセクションだけを参照することもできます。
あるセクションのコードスニペット(プログラムの一部を示す短いコードの例)が理解しにくい場合や難しい場合、関連するセクションでさらに多くの例を見つけることができます。たとえば、「インジケーターの作成」や「インジケーターコードのサンプル」記事では、カスタムインジケーターがcTrader Algoでどのように機能するかの重要な原則を説明し、示しています。
APIのメンバーについてもっと知りたい場合は、リファレンスライブラリを参照することもできます。コードスニペットに不明なメソッドやクラスが表示された場合、そのオーバーロードやプロパティ、および簡単な説明がリファレンスライブラリに含まれている可能性があります。
cTraderアルゴリズム作業の前提条件
cBots、インジケーター、プラグインを使用する前に満たすべき主な前提条件は2つあります。
- .NETランタイムをダウンロードしてインストールします。
- 最新バージョンのcTraderをダウンロードしてインストールし、アカウントの1つでログインします。
cTrader デスクトップ版には、比較的シンプルなロボットやインジケーターを開発するために使用できるビルトインコンパイラが付属しています。ただし、カスタムUIコントロールの作成など、cBots/インジケーター/プラグインのほとんどの高度な機能を使用するには、.NET SDKコンパイラに切り替える必要があります。.NET SDKは、cTrader Desktopで使用する前に別途ダウンロードしてインストールする必要があります。
注意
.NET SDKには既に.NET Runtimeが含まれているため、両方を同時にダウンロードしてインストールする必要はありません。
cTrader Algoには、完全にIntelliSense(式やステートメントの自動補完に使用できるコード「アドバイザー」)をサポートするビルトインコードエディタが含まれています。ただし、Visual Studio CodeなどのサードパーティIDEを使用してインジケーターやcBotsを開発することもできます。このドキュメントには、埋め込みコードエディタおよび外部IDEの使用に関する詳細情報が含まれています。