このコードの改善についてコメントをお寄せください。ありがとうございます。
主な特徴:
- マルチタイムフレーム分析: M1、M5、M15チャートのストキャスティクスオシレーターとボリンジャーバンドの値を利用して、取引エントリーの判断を行います。
- エントリー条件:
- 買い: すべてのストキャスティクスKラインがMinStochOversoldレベルを下回り、M15の価格が下ボリンジャーバンドを下回っている場合。
- 売り: すべてのストキャスティクスKラインがMaxStochOverboughtレベルを上回り、M15の価格が上ボリンジャーバンドを上回っている場合。
- 取引管理:
- 一度に最大MaxTradesPerTrendのオープントレードを許可します。
- M15タイムフレームの平均真のレンジ(ATR)に基づいてストップロス(SL)とテイクプロフィット(TP)のレベルを計算します。
- スプレッド管理: 現在のスプレッドをMaxSpreadStandard(スタンダード/ECN口座用)およびMaxSpreadCent(センター/マイクロ口座用)と比較します。スプレッドが高すぎる場合、即時実行の代わりに買いリミットまたは売りリミット注文を出します。
- 保留注文: スプレッドが即時実行に対して高すぎる場合、EAは買いエントリーのために現在の価格より少し下、売りエントリーのために少し上の保留買いリミットまたは売りリミット注文を出します。
- 入力パラメータ: スリッページ、ロットサイズ、インジケーターの期間と偏差、SL/TPの倍率、ブレイクイーブンとトレーリングストップの設定、異なる口座タイプの最大スプレッド制限、ストキャスティクスの過買い/過売りレベルなど、さまざまなカスタマイズ可能な入力パラメータを提供します。
- OnTick関数: OnTick()関数はメインの実行ブロックです。インジケーターの値を取得し、オープンオーダーを確認し、買いと売りの条件を評価して新しい取引を開く可能性があります。
- デバッグ: デバッグ目的のためにPrint()ステートメントを含み、異なるタイムフレームにわたるストキャスティクスK値と現在のスプレッドをログに記録します。

