ナンピンEAを改修したい時に整理すること|追加条件・倍率・最大本数・停止条件
既存のナンピンEAを使っていて、「追加エントリー条件を変えたい」「ロット倍率を変えたい」「最大本数を制限したい」「一定条件でナンピンを止めたい」と考えることがあります。
ナンピンEAの改修では、単に「追加幅を広げる」「倍率を変える」といった指定だけでは不十分な場合があります。初回エントリー、追加エントリー、ロット計算、最大本数、平均建値、決済、停止条件、証拠金、ログを分けて整理する必要があります。
特に、ナンピンEAでは、追加条件を変えるだけでも、総ロット、保有本数、平均建値、含み損、証拠金維持率、バックテスト結果、実運用時の挙動に影響する場合があります。
また、既存EAの改修では、ソースコードの有無、Magic Number、対象ポジション、既存の決済ロジック、停止条件、ログ出力の有無も確認が必要です。
この記事では、ナンピンEAを改修したい時に、開発依頼前に整理したい追加条件、倍率、最大本数、停止条件、平均建値、決済、ログ、検証条件をまとめます。
なお、この記事はEA改修や開発依頼前の技術確認を目的とした内容です。ナンピンEAの利用推奨、推奨倍率、推奨本数、推奨ロット、売買助言、利益保証を行うものではありません。
この記事で確認すること
| 確認項目 | 内容 | 依頼前の確認ポイント |
|---|---|---|
| 追加条件 | 何を基準に次のポジションを追加するかです。 | 価格幅、時間、シグナル、含み損、フィルター条件を確認します。 |
| ナンピン幅 | 追加エントリーの間隔です。 | 固定幅、可変幅、ATR連動、段階式を分けて確認します。 |
| ロット倍率 | 追加ごとのロット増減ルールです。 | 初期ロット、倍率、上限、丸め処理を確認します。 |
| 最大本数 | 追加できるポジション数の上限です。 | 方向別、ロジック別、口座全体の上限を分けて確認します。 |
| 停止条件 | 追加エントリーを止める条件です。 | 新規停止、追加停止、既存ポジション管理継続を分けて確認します。 |
| 決済条件 | 平均建値決済、一括決済、TP/SLなどです。 | ナンピン中の決済優先順位を確認します。 |
ナンピンEA改修で最初に分けること
ナンピンEAを改修する時は、まず「初回エントリー」と「追加エントリー」を分けて考える必要があります。
初回エントリーは最初の注文です。追加エントリーは、すでにポジションを保有している状態で、条件に応じてさらにポジションを増やす処理です。
この2つを混同すると、「初回は止めたいが追加は続けたい」「新規は止めたいが決済管理は続けたい」といった仕様が曖昧になります。
| 区分 | 役割 | 依頼前に整理すること |
|---|---|---|
| 初回エントリー | 最初のポジションを建てる処理です。 | 変更対象に含めるか、既存のままにするかを確認します。 |
| 追加エントリー | 保有中にポジションを追加する処理です。 | 追加幅、条件、ロット、最大本数を確認します。 |
| 平均建値 | 複数ポジションの平均価格です。 | 決済基準に使うかを確認します。 |
| 決済管理 | バスケット決済、TP/SL、建値、トレーリングなどです。 | 追加条件と競合しないか確認します。 |
| リスク制御 | 証拠金、最大損失、停止条件などです。 | 追加停止と決済継続を分けて整理します。 |
| ログ・通知 | 追加理由、停止理由、決済理由を記録します。 | 検証時に確認したい項目を整理します。 |
追加条件を改修したい場合
追加条件とは、どのタイミングで次のナンピンポジションを追加するかを決める条件です。
追加条件には、価格が一定幅逆行した時、一定時間が経過した時、特定のシグナルが出た時、含み損が一定以上になった時、スプレッドが許容範囲内の時など、複数の要素があります。
| 追加条件 | 内容 | 依頼前の注意点 |
|---|---|---|
| 価格幅 | 前回ポジションや初回価格から一定距離で追加します。 | pips、point、価格差、GOLD / XAUUSDの単位を確認します。 |
| 時間間隔 | 前回追加から一定時間経過後に許可します。 | 秒、分、バー数のどれを使うか確認します。 |
| シグナル条件 | インジケーターや内部判定で追加します。 | 初回エントリー条件と同じか別条件かを確認します。 |
| 含み損条件 | 含み損や損益金額を基準に追加します。 | 通貨建て、pips換算、全体損益を分けます。 |
| スプレッド条件 | スプレッドが広い時は追加しない条件です。 | spread_pointsやspread_blockログを確認します。 |
| 時間帯条件 | 特定時間帯は追加を許可または停止します。 | サーバー時間基準か日本時間基準か確認します。 |
追加条件を改修する場合は、どの条件をAND条件にするのか、OR条件にするのか、どの条件を優先するのかを整理してください。
ナンピン幅を整理する
ナンピン幅とは、追加エントリーを行う価格間隔です。
ナンピン幅には、すべて同じ幅で追加する方式、段階ごとに幅を広げる方式、ATRなどの値幅に応じて変える方式があります。
| 幅の方式 | 内容 | 依頼前の確認ポイント |
|---|---|---|
| 固定幅 | 毎回同じ価格幅で追加します。 | 幅の単位と基準価格を確認します。 |
| 段階式 | 1本目、2本目、3本目で幅を変えます。 | 各段階の幅を表にします。 |
| 可変式 | 相場状況に応じて幅を変えます。 | どの指標や条件で変えるか確認します。 |
| ATR連動 | ATRなどの値幅を基準にします。 | 時間足、期間、倍率、上限下限を確認します。 |
| 前回建値基準 | 最後のポジションからの距離で追加します。 | 初回価格基準か前回価格基準か確認します。 |
| 平均建値基準 | 平均建値からの距離で条件を見ます。 | 複数ポジション時の計算方法を確認します。 |
ナンピン幅を伝える時は、「何pips」だけではなく、point、価格差、対象銘柄、基準価格をセットで整理してください。
ロット倍率を整理する
ロット倍率とは、追加エントリーごとにロットをどのように増減させるかを決めるルールです。
ロット倍率を改修する場合は、初期ロット、追加ロット、倍率、最大ロット、ロット丸め、口座タイプ、最小ロット、ロットステップを確認します。
| 確認項目 | 内容 | 依頼前の注意点 |
|---|---|---|
| 初期ロット | 最初のポジションのロットです。 | 追加ロットの基準にするか確認します。 |
| 倍率 | 追加ごとに何倍にするかです。 | 倍率の推奨ではなく、仕様として整理します。 |
| 固定加算 | 毎回一定ロットを加算する方式です。 | 倍率方式と混同しないよう確認します。 |
| 最大ロット | 1ポジションあたりの上限です。 | 安全装置として必要かを確認します。 |
| 総ロット上限 | 保有ポジション合計ロットの上限です。 | 最大本数とあわせて確認します。 |
| ロット丸め | ブローカーのロット刻みに合わせる処理です。 | vol_min、vol_step、vol_maxを確認します。 |
| 口座タイプ | スタンダード、ゼロ、セントなどです。 | 同じ数値でも意味が変わる場合があります。 |
この記事では、特定の倍率やロットを推奨しません。依頼時には、現在の計算式、変更したい計算式、上限、口座条件を分けて伝えることが重要です。
最大本数を整理する
最大本数とは、ナンピンで保有できる追加ポジション数の上限です。
最大本数は、方向別、ロジック別、銘柄別、Magic Number別、口座全体で分けて考える必要があります。
| 上限の種類 | 内容 | 依頼前の確認ポイント |
|---|---|---|
| 方向別上限 | BUY側、SELL側で別々に上限を持ちます。 | 両建て可否とあわせて確認します。 |
| ロジック別上限 | Logic1、Logic2などで上限を分けます。 | Magic Numberやコメントで識別するか確認します。 |
| 銘柄別上限 | GOLD、USDJPYなど銘柄ごとに上限を持ちます。 | チャート銘柄のみか複数銘柄か確認します。 |
| Magic Number別上限 | EAごとの識別番号で上限を分けます。 | 他EAや手動ポジションを含めないよう確認します。 |
| 口座全体上限 | 口座全体の保有数や総ロットを制限します。 | 複数EA運用時に確認が必要です。 |
| 追加回数上限 | 初回を除いた追加回数の上限です。 | 最大ポジション数と表記がずれる場合があります。 |
「最大本数」を依頼する場合は、初回ポジションを含むのか、追加ポジションだけを数えるのかを明確にしてください。
停止条件を整理する
ナンピンEAでは、停止条件の整理が特に重要です。
停止条件には、新規エントリーを止める条件、追加エントリーだけを止める条件、既存ポジションの決済管理は続ける条件があります。
| 停止区分 | 内容 | 依頼前の確認ポイント |
|---|---|---|
| 新規停止 | 初回エントリーを止めます。 | 既存ポジション管理は続けるか確認します。 |
| 追加停止 | ナンピン追加だけを止めます。 | 決済、建値、トレーリングは続けるか確認します。 |
| 時間停止 | 特定時間帯や週末前に止めます。 | サーバー時間基準か確認します。 |
| スプレッド停止 | スプレッドが広い時に止めます。 | 新規のみか追加も止めるか確認します。 |
| 証拠金停止 | 証拠金維持率や余剰証拠金で止めます。 | 何を止めるかを分けて確認します。 |
| 最大損失停止 | 含み損や口座損益で停止します。 | 決済するのか、追加停止だけかを確認します。 |
| 経済指標停止 | 指標前後に止めます。 | 対象通貨、前後時間、既存管理の扱いを確認します。 |
停止条件を依頼する場合は、「EAを止める」のではなく、「初回を止める」「追加を止める」「決済管理は続ける」など、機能単位で整理してください。
平均建値と決済条件を整理する
ナンピンEAでは、複数ポジションの平均建値を基準に決済することがあります。
平均建値を使う場合は、BUYとSELLを分けるのか、ロジック別に分けるのか、手数料やスワップを含めるのか、どの価格を基準にTPを置くのかを整理します。
| 確認項目 | 内容 | 依頼前の注意点 |
|---|---|---|
| 平均建値の対象 | どのポジションを平均に含めるかです。 | Magic Number、方向、ロジックを確認します。 |
| BUY / SELL分離 | 方向別に平均建値を計算します。 | 両建て時の扱いを確認します。 |
| バスケットTP | 複数ポジション全体で利益確定します。 | 金額、価格差、pointなどの単位を確認します。 |
| バスケットSL | 複数ポジション全体で損切りします。 | 内部決済か口座側SLかを確認します。 |
| 建値決済 | 平均建値付近で決済します。 | 手数料、スプレッド、微益幅を確認します。 |
| 一括決済 | 対象ポジションをまとめて決済します。 | 一部失敗時の処理を確認します。 |
ナンピンEAの決済条件を改修する場合は、追加条件だけでなく、平均建値、バスケット決済、建値、トレーリング、ロスカット条件との関係も確認してください。
ナンピン停止と決済継続を分ける
ナンピンEAでは、追加エントリーを止めることと、保有中ポジションを管理することは別です。
たとえば、スプレッドが広い時に追加エントリーを止めても、既存ポジションの決済、建値移動、トレーリング、ロスカット監視は続けたい場合があります。
| 機能 | 止めるかどうか | 確認すること |
|---|---|---|
| 初回エントリー | 停止対象になりやすい | 新規だけ止めるか確認します。 |
| 追加エントリー | 個別に停止条件を持たせる場合があります。 | スプレッド、時間、証拠金で止めるか確認します。 |
| 平均建値計算 | 通常は継続確認が必要です。 | 保有中の状態管理に使います。 |
| 決済処理 | 止めるとリスクが変わる場合があります。 | 停止中も決済は続けるか確認します。 |
| 建値・トレーリング | 継続するか確認が必要です。 | 追加停止中でも保護処理を続けるか確認します。 |
| 通知・ログ | 継続するのが望ましい場合があります。 | 停止理由や決済理由を確認します。 |
依頼時には、「停止条件に該当した時に何を止めるのか」「何は続けるのか」を明確にしてください。
対象ポジションを明確にする
ナンピンEA改修では、どのポジションを対象にするかを明確にする必要があります。
同じ口座で複数EAを動かしている場合や、手動ポジション、コピーEA、複数ロジックEAがある場合は、対象の切り分けが重要です。
| 対象条件 | 確認内容 | 注意点 |
|---|---|---|
| 銘柄 | チャート銘柄だけか、複数銘柄かです。 | Symbol指定を確認します。 |
| Magic Number | どのEAのポジションかを識別します。 | 他EAや手動ポジションを含めないよう確認します。 |
| 方向 | BUY、SELL、両方のどれかです。 | 方向別にナンピン条件が異なる場合があります。 |
| ロジック番号 | 複数ロジックEAの内部分類です。 | Logic1、Logic2などを分けるか確認します。 |
| コメント | 注文コメントで識別する場合があります。 | ブローカーやコピーEAで変わる可能性があります。 |
| 手動ポジション | 裁量で入れたポジションです。 | ナンピン対象に含めるかを明確にします。 |
ログで確認したい項目
ナンピンEA改修では、追加条件が成立したのか、条件未成立で見送ったのか、停止条件でブロックされたのかをログで確認できることが重要です。
| ログ項目 | 確認内容 | 例 |
|---|---|---|
| nanpin_check | 追加条件の判定を行ったか確認します。 | nanpin_check=Y |
| add_condition | 追加条件が成立した理由を確認します。 | distance_ok、time_ok、signal_ok |
| skip_reason | 追加を見送った理由を確認します。 | spread_block、max_count、margin_block |
| lot_calc | 追加ロット計算を確認します。 | first_lot、multiplier、next_lot |
| position_count | 現在の保有数を確認します。 | buy_count、sell_count、total_count |
| avg_price | 平均建値を確認します。 | basket_avg、buy_avg、sell_avg |
| stop_reason | 停止条件を確認します。 | time_stop、margin_stop、news_stop |
| order_result | 追加注文の結果を確認します。 | order_success、order_fail、retcode |
「ナンピンしない」という相談では、追加条件が未成立なのか、最大本数で止まっているのか、スプレッドや証拠金でブロックされているのか、注文に失敗しているのかを分けて確認します。
バックテストで確認すること
ナンピンEAを改修した場合は、改修前後でバックテスト条件をそろえて確認することが重要です。
ただし、バックテスト結果は将来の結果を保証するものではありません。ここで確認するのは、追加条件、ロット計算、最大本数、停止条件、決済条件が仕様どおり動いているかどうかです。
| 確認項目 | 内容 | 注意点 |
|---|---|---|
| EAバージョン | 改修前後のバージョンを記録します。 | 比較できるように分けて保存します。 |
| setファイル | 同じ設定で比較します。 | 変更したパラメータを記録します。 |
| 銘柄・時間足 | 同じ銘柄と時間足で確認します。 | GOLD / XAUUSDではpointやdigitsも確認します。 |
| 検証期間 | 同じ期間で比較します。 | 相場期間の違いを混ぜないようにします。 |
| 最大本数 | 設定した上限で止まるか確認します。 | 初回を含むか除くかを確認します。 |
| 総ロット | 倍率や追加ロットの合計を確認します。 | ロット丸めも確認します。 |
| 最大DD | 資金の落ち込みを確認します。 | 利益だけで判断しないようにします。 |
| 停止条件 | 時間、スプレッド、証拠金などで止まるか確認します。 | 追加停止と決済継続を分けます。 |
| ログ | 追加理由、停止理由、決済理由を確認します。 | nanpin_check、skip_reasonを確認します。 |
依頼前に用意するとよい資料
ナンピンEA改修を依頼する場合は、現在のEA仕様と変更したいナンピン仕様を分けて整理します。
| 資料 | 内容 | 注意点 |
|---|---|---|
| 現在のソースコード | mq5、mqhなどのソース一式です。 | ex5だけでは直接改修できない場合があります。 |
| 現在のsetファイル | 今使っている入力設定です。 | 改修前後の比較に使います。 |
| 現在のナンピン仕様 | 追加幅、倍率、本数、停止条件です。 | 分かる範囲で整理します。 |
| 変更したい仕様 | どこをどう変えたいかです。 | 追加条件、倍率、上限、停止を分けます。 |
| 取引履歴 | 追加回数、平均建値、決済結果が分かる履歴です。 | 該当期間やチケットを示すと確認しやすくなります。 |
| Expertsログ | EA側の追加判定や停止理由です。 | skip_reason、order_resultを確認します。 |
| Journalログ | MT5側の注文、変更、決済結果です。 | retcodeや注文失敗の確認に使います。 |
| バックテスト条件 | 銘柄、時間足、期間、スプレッド、モデルです。 | 改修前後で比較できるようにします。 |
依頼前チェック表
| チェック項目 | 確認内容 |
|---|---|
| 初回エントリーを変更するか確認した | 初回条件はそのままか、変更対象に含めるかを分けます。 |
| 追加エントリー条件を整理した | 価格幅、時間、シグナル、含み損、スプレッド条件を確認します。 |
| ナンピン幅を整理した | 固定幅、段階式、可変式、ATR連動を分けます。 |
| ロット倍率を整理した | 初期ロット、倍率、最大ロット、総ロット上限を確認します。 |
| 最大本数を整理した | 初回を含むか、追加だけか、方向別・ロジック別かを確認します。 |
| 停止条件を整理した | 新規停止、追加停止、決済継続を分けます。 |
| 平均建値の扱いを確認した | 対象ポジション、方向別、ロジック別、決済基準を確認します。 |
| 対象ポジションを確認した | 銘柄、Magic Number、方向、ロジック、手動ポジションを確認します。 |
| ログで確認したい項目を整理した | nanpin_check、skip_reason、lot_calc、avg_priceを確認します。 |
| 改修前後の比較条件を整理した | EAバージョン、setファイル、銘柄、時間足、期間を保存します。 |
| ソースコードの有無を確認した | mq5、mqhがあるかを確認します。 |
| 修正範囲を明確にした | ナンピン条件だけか、決済やリスク制御も含むかを分けます。 |
FAQ
ナンピンEAの追加条件だけを改修できますか?
ソースコードがあり、EA内部の構造上分離できる場合は相談できます。ただし、追加条件はロット計算、最大本数、平均建値、決済条件、停止条件と関係するため、周辺処理の確認も必要です。
ロット倍率を変える時は何を整理しますか?
初期ロット、追加ロット、倍率、最大ロット、総ロット上限、ロットステップ、口座タイプを整理します。この記事では特定の倍率やロットは推奨しません。
最大本数は初回ポジションを含みますか?
EA仕様によって異なります。依頼前には、初回を含む最大ポジション数なのか、追加エントリー回数の上限なのかを明確にしてください。
停止条件では何を止めるか決める必要がありますか?
必要です。新規エントリーを止めるのか、追加エントリーだけを止めるのか、既存ポジションの決済管理は続けるのかを分けて整理します。
ナンピンEA改修後は何を確認しますか?
コンパイル、起動、追加条件、ロット計算、最大本数、停止条件、平均建値、決済理由、ログ、バックテスト、取引履歴を確認します。
ex5ファイルだけでもナンピンEAを改修できますか?
ex5だけでは直接改修できない場合があります。通常はmq5やmqhなどのソースコードが必要です。ソースがない場合は、新規開発や補助ツールとして検討する場合があります。
関連ページ
ナンピンEAを改修する時は、追加条件や倍率だけでなく、決済ロジック、コピーEAとの同期、ログ出力、見積依頼前の資料整理もあわせて確認すると、影響範囲を整理しやすくなります。
| 関連ページ | 確認ポイント |
|---|---|
| EA開発の見積依頼前に整理すること|仕様書・ログ・setファイル・検証条件 | ナンピンEA改修前に、仕様書、setファイル、検証条件、対象外範囲を整理します。 |
| EAの決済ロジックだけを改修したい時に整理すること|TP/SL・建値・トレーリング・一括決済 | 平均建値決済、バスケット決済、TP/SL、建値、トレーリングとの関係を確認します。 |
| コピーEAの同期ズレを相談する前に整理すること|コピー元・コピー先・ロット・Magic Number | ナンピンEAをコピーEAで運用する場合に、Magic Number、ロット、本数の同期確認に使います。 |
| EAのログ出力を増やしたい時に整理すること|Experts・Journal・CSV・通知 | nanpin_check、skip_reason、lot_calc、avg_priceなどのログ確認に使います。 |
まとめ
ナンピンEAを改修したい場合は、初回エントリー、追加エントリー、ロット計算、最大本数、停止条件、平均建値、決済、ログを分けて整理することが重要です。
追加条件を変えるだけでも、総ロット、保有本数、平均建値、含み損、証拠金維持率、決済結果に影響する場合があります。そのため、改修前には、対象銘柄、Magic Number、方向、ロジック番号、手動ポジションを含めるかを確認してください。
停止条件では、新規エントリーを止めるのか、追加エントリーだけを止めるのか、既存ポジションの決済管理を続けるのかを分けて整理します。
改修後は、コンパイル確認だけでなく、追加条件、ロット計算、最大本数、停止条件、平均建値、決済理由、取引履歴、バックテスト、Expertsログ、Journalログを確認し、改修前後の挙動を比較してください。
