cTrader CLIのAIワークフロー¶
この記事では、目的は決まっていても正確なコマンド構文が分からない場合に、AIアシスタントとcTrader CLIを組み合わせて使用する方法を説明します。やりたいことを自然言語で説明すると、AIアシスタントがコマンドやスクリプトの案を作成します。内容を確認してから実行してください。
注意
AIアシスタントが正しいコマンドを生成できるよう、cTrader CLIのGitHubリポジトリを案内してください。スクリプトを作成する前に、コマンドの完全なリファレンスを参照できるようになります。
AIアシスタントでできること ¶
やりたいことは言葉で説明できても、対応するcTrader CLIコマンドが分からない場合に、AIアシスタントが役立ちます。次のような用途に利用できます。
- 言葉で説明した目的から、cTrader CLIコマンドの案を作成する。
- 不明なコマンド、オプション、出力について説明する。
- エラーメッセージの原因と修正方法を提案する。
.cbotsetファイル、optimizeのパラメータファイル、バックテスト設定を確認する。- 普段手動で実行している一連のコマンドから、繰り返し使えるスクリプトを作成する。
- スキルを活用して、より信頼性の高いコマンドを生成する。
コマンドとプロンプトの違い ¶
この2つを明確に区別してください。
- コマンドとは、ターミナルに入力するテキストです。例:
ctrader-cli candles --account=<account-id> --symbol=EURUSD --period=h1 --count=200。 - プロンプトとは、やりたいことを説明するためにAIアシスタントに送るテキストです。 AIアシスタントはコマンドを提案するので、内容を確認してから実行します。
注意
この記事のプロンプトは、AIアシスタントにコピーして貼り付けることを想定しています。一方、CLIリファレンスに掲載されているコマンドは、ターミナルで実行するためのものです。
安全なプロンプトの書き方 ¶
十分な背景情報と明確な制限事項を伝えると、プロンプトの効果が高まります。次の内容を含めてください。
- 目的を分かりやすい言葉で説明する。
- 使用しているOSや、使用予定のコマンドグループなどの関連情報を伝える。
- cTrader CLIに存在しないコマンドやオプションを作り出さないよう指示する。
- cTrader CLIの現在公開されているバージョンの構文を使用するよう指示する。
- 前提として仮定した内容を明示するよう求める。
- 情報が不足している場合は、先に知らせるよう求める。
- 1つの複合コマンドではなく、安全で各手順を確認しやすい実行手順を提案するよう求める。
- 実際の認証情報を共有しないよう、ファイルパス、口座番号、銘柄などはプレースホルダーに置き換える。
一般的なプロンプト ¶
次のプロンプト例では、cTrader CLIとAIを組み合わせた使い方を紹介します。
見つけたコマンドを説明してもらう ¶
AIアシスタントに、コマンドを1行ずつ説明し、リスクのありそうなオプションや、存在しない可能性のある要素を指摘するよう求めてください。その後、すべてのオプションを確認できる該当するリファレンス項目を参照させます。
Explain what this cTrader CLI command does, option by option, and describe any
effect it would have on a trading account:
<paste the command here>
If any option looks incorrect or risky, say so. Do not assume options that are
not shown.
エラーを診断する ¶
コマンド、エラー出力、状況をAIアシスタントに伝え、最も可能性の高い原因と安全な解決方法を提案してもらいます。必要に応じてトラブルシューティングの手順も参照してください。
I ran this cTrader CLI command:
<paste the command, with credentials removed>
It returned this error:
<paste the error output>
Suggest the most likely cause and a safe way to fix it. List the checks I should
make first. Do not invent commands or options that cTrader CLI does not provide,
and state your assumptions.
繰り返し使えるスクリプトを作成する ¶
普段手動で実行している一連のコマンドを、最初のエラーで停止し、認証情報をファイルに保存しないスクリプトにまとめます。一般的なコマンドグループを活用してください。
I run these cTrader CLI commands in order by hand:
<list the commands, with credentials removed>
Draft a script for <operating system> that runs them in sequence and stops if a
command fails. Keep credentials in placeholders or environment variables, not
in the script. Add a comment above each command explaining what it does, and
add a note reminding me to review the script before running it on a live
account.
取引用のプロンプト ¶
次のプロンプトは、具体的な取引シナリオを対象としています。
注意
AIが生成したコマンドやスクリプトは、実行前に必ず確認してください。
- すべてのコマンドとオプションがCLIリファレンスに記載されていることを確認する。
- 口座番号、銘柄、取引数量、価格が正しいことを確認する。
- 最初に読み取り専用のコマンドを実行して、設定を確認する。
- 取引コマンドは、ライブ口座で使用する前にデモ口座で試す。
保留中の注文を変更またはキャンセルする ¶
AIアシスタントに、注文コマンドを使って未約定の指値注文の価格、損切り、利食いの水準を変更するか、注文を取り消すよう依頼してください。
Write a cTrader CLI command that changes the price of pending order <order-id>
on account <account-id> to <new-price>, with stop-loss <price> and take-profit
<price>. Tell me how to cancel the same order instead.
スクリプトからcBotを実行する ¶
AIアシスタントにcBotのパスと必要なパラメータを渡し、runコマンドでインスタンスを起動できるようにします。
Write a cTrader CLI command that runs <path-to-algo-file> on account
<account-id> with symbol <symbol> and period <period>. Show me how to pass cBot
parameters on the command line and how to make the CLI exit when the cBot stops.
オープンポジションに保護を追加する ¶
AIアシスタントに、ポジションコマンドを使って、損切りと利食いが設定されていない保有ポジションにそれぞれの水準を追加するよう依頼してください。
Position <position-id> on account <account-id> is open on <symbol> with no
stop loss or take profit. Write the cTrader CLI command that sets stop-loss
<price> and take-profit <price> on it. A position has one take-profit level,
so use one `--tp` price. Show the command, no preview output.
操作に関する詳細
- 現在、cTrader CLIでは成行注文のスリッページ許容幅(market range)の設定はサポートされていません。
--limit-rangeオプションはストップリミット注文にのみ適用されます。 - cTrader CLIから発注した保留中の注文には有効期限がありません。現在、有効期限(good till date)の設定や、ストップ注文のトリガー方法の選択には対応していません。
- 現在、cTrader CLIでは取引ラベルやコメントの設定・変更はできません。ただし、ポジション、注文、取引履歴の一覧で読み取りと表示ができます。 cTrader CLIで実行するcBotでは、独自のコードからラベルを追加できます。 cTraderのWindowsアプリとMacアプリでは、ラベル列とコメント列を有効にすると、Trade Watchパネルに両方の情報が表示されます。
- cTrader CLIでは、損切りと利食いの水準をそれぞれ1つだけ設定できます。トレーリングストップ、建値保護、複数の利食い水準は現在利用できません。
警告
AIアシスタントは補助ツールであり、最終的な判断を委ねるものではありません。口座で実行されるすべてのコマンドについて、責任を負うのは利用者自身です。