トレードツール

約定履歴CSV分析 2026年版 — MT4・MT5のトレード記録を正しく読む方法

投稿日:

トレードツール

約定履歴CSV分析 — MT4・MT5のトレード記録を正しく読む方法

約定履歴CSV分析の手順をトレード歴14年のSTARKが解説。MT4・MT5からのエクスポート方法、Excel・Pythonでのプロフィットファクター・最大DD・勝率の計算、口座別の履歴DL方法まで完全網羅。

2026年6月 / 読了10分 / トレード歴14年 STARK
この記事はこんな方に向けています:MT4/MT5の取引履歴をExcelで分析したい方 / プロフィットファクターや最大DDを自分で計算したい方 / Pythonを使ってトレード分析を自動化したい方
この記事のポイント

  • MT4/MT5からCSVをエクスポートし、Excelで基本指標を算出できる
  • 見るべき指標:勝率・PF・最大DD・平均RR比・連続損失回数
  • Pythonを使えば高度な分析と可視化が自動化できる
  • XM・IC Marketsの履歴DL手順も解説

約定履歴CSV分析が必要な理由

「なんとなく勝っている」「なんとなく負けている」という感覚だけでトレードを続けていても、戦略の改善はできません。約定履歴をCSV形式でエクスポートし、データとして分析することで初めて「なぜ勝てているのか」「どこで負けているのか」が明確になります。

私自身、トレード歴の最初の3年は感覚に頼っていましたが、CSV分析を始めてから初めて「GBP/JPYのロングエントリーは勝率42%しかない」「15〜20時台のエントリーはPFが1.1を下回っている」という具体的な課題が見えるようになりました。

分析前 分析後
「なんとなく下手くそだ」 「GBP/JPYの勝率が42%で引っ張っている」
「ドローダウンが大きい気がする」 「最大連続損失7回。金曜午後に集中している」
「どこを直せばいいかわからない」 「15〜20時のエントリーを除外するとPF1.8→2.1になる」

MT4・MT5からCSVをエクスポートする手順

MT4でのエクスポート手順

1

ターミナルを開く

MT4下部の「ターミナル」タブをクリック(Ctrl+Tでも開く)

2

「口座履歴」タブを選択

ターミナルウィンドウ内の「口座履歴」タブをクリック

3

期間を設定

右クリック→「全履歴」または「カスタム期間」で分析したい期間を選択

4

CSVで保存

右クリック→「レポートとして保存」→「詳細レポート」を選択してCSV形式で保存

MT5でのエクスポート手順

MT5はMT4と手順がほぼ同じですが、エクスポート時に「取引履歴」タブを使います。MT5の場合は「ツール」→「取引履歴」→期間指定→「CSVとして保存」の順で操作します。MT5の履歴CSVはMT4と列構成が若干異なるため、後述のExcel・Python処理で注意が必要です。

XM・IC Marketsの取引履歴ダウンロード方法

MT4/MT5端末から直接エクスポートする以外に、各ブローカーのマイページからダウンロードする方法もあります。

ブローカー 履歴取得方法 形式
XM Trading マイページ→「取引履歴」→期間指定→ダウンロード CSV / PDF
IC Markets マイページ→「取引レポート」→MT4/MT5別に選択 CSV
AXIORY マイエリア→「取引履歴」→期間とアカウント指定 CSV
Exness パーソナルエリア→「履歴」→エクスポート CSV / Excel

マイページからのダウンロードはMT4端末が起動していなくてもアクセスでき、長期間のデータを一括でダウンロードできる利点があります。特にXMとIC Marketsは複数口座を持っている場合でも口座番号別に履歴を取得できます。

IC Markets
取引履歴の管理はマイページが充実したブローカーで
IC Marketsはマイページから詳細な取引レポートをCSVで取得可能。複数口座の履歴管理も簡単。IC Markets公式サイトを見る →

ExcelでCSVを分析する — 基本指標の計算

エクスポートしたCSVをExcelで開いてから、以下の基本指標を計算します。MT4のCSVは通常、チケット番号・通貨ペア・売買方向・ロット・エントリー価格・決済価格・損益などの列で構成されています。

勝率の計算

勝率の計算式
勝ちトレード数 =COUNTIF(損益列, “>0”)
全トレード数 =COUNTA(損益列)
勝率 =勝ちトレード数 / 全トレード数 × 100

プロフィットファクター(PF)の計算

PFの計算式
総利益 =SUMIF(損益列, “>0”)
総損失(絶対値) =ABS(SUMIF(損益列, “<0”))
PF =総利益 / 総損失

PFの目安:1.0未満はシステム失敗 / 1.0〜1.3は要改善 / 1.3〜1.8は平均的 / 1.8以上は優秀 / 2.0以上は卓越

最大ドローダウン(DD)の計算

最大DDはExcelの標準関数だけでは計算が複雑です。損益列の累積合計(残高推移)を計算し、各時点での「直近最高残高からの下落額」を求めます。最もシンプルな方法は「累積損益の推移グラフを折れ線で描き、目視で最大下落幅を確認する」方法ですが、正確な数値はPythonを使うことを推奨します。

PythonでCSVを高度分析する

Pythonを使うことで、手動計算では困難な「時間帯別勝率」「通貨ペア別PF」「月別損益推移グラフ」などを自動で算出・可視化できます。

必要なライブラリのインストール

以下のコマンドでライブラリをインストールします。

pip install pandas numpy matplotlib

基本分析スクリプト

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# CSVを読み込む(MT4のエクスポート形式に合わせて調整)
df = pd.read_csv('trade_history.csv', encoding='utf-8-sig')

# 損益列名を確認して変数に代入(例:'Profit')
profit_col = 'Profit'

# 勝率
win_rate = (df[profit_col] > 0).sum() / len(df) * 100
print(f'勝率: {win_rate:.1f}%')

# PF
total_profit = df[df[profit_col] > 0][profit_col].sum()
total_loss = abs(df[df[profit_col] < 0][profit_col].sum())
pf = total_profit / total_loss if total_loss != 0 else float('inf')
print(f'PF: {pf:.2f}')

# 最大DD
cumulative = df[profit_col].cumsum()
running_max = cumulative.cummax()
drawdown = cumulative - running_max
max_dd = drawdown.min()
print(f'最大DD: {max_dd:.2f}')

# 残高推移グラフ
plt.figure(figsize=(12, 5))
plt.plot(cumulative.values)
plt.title('残高推移')
plt.xlabel('トレード回数')
plt.ylabel('累積損益')
plt.grid(True)
plt.tight_layout()
plt.savefig('equity_curve.png', dpi=150)
plt.show()

このスクリプトで基本的な分析と残高推移グラフの保存まで自動化できます。MT4のCSVはヘッダー構成が口座・ブローカーによって異なる場合があるため、最初に `df.columns` で列名を確認してから列名を指定してください。

時間帯別・通貨ペア別分析

# 時間列がある場合(例:'Time'列がHH:MM:SS形式)
df['Hour'] = pd.to_datetime(df['Time']).dt.hour
hourly = df.groupby('Hour')[profit_col].agg(['sum','count','mean'])
print(hourly)

# 通貨ペア別PF('Symbol'列がある場合)
for symbol in df['Symbol'].unique():
    sub = df[df['Symbol'] == symbol]
    p = sub[sub[profit_col] > 0][profit_col].sum()
    l = abs(sub[sub[profit_col] < 0][profit_col].sum())
    pf_sym = p/l if l != 0 else float('inf')
    print(f'{symbol}: PF={pf_sym:.2f} 勝率={((sub[profit_col]>0).sum()/len(sub)*100):.1f}%')

CSV分析で見るべき5つの指標

指標 計算方法 改善目標
勝率 勝ちトレード数 / 全トレード数 40%以上(PF次第)
プロフィットファクター 総利益 / 総損失 1.5以上
最大ドローダウン 資産最高値からの最大下落率 20%以内
平均RR比 平均利益 / 平均損失の絶対値 1.2以上
最大連続損失回数 連続でマイナスになった最大回数 7回以内(心理的許容範囲)

この5指標の中で最も重要なのはPFです。勝率が30%でもPFが2.0以上あれば長期的に資金は増えます。逆に勝率70%でもPF0.8では必ず資金が減ります。

XM
MT4で分析環境を整えるならXMが安定
XMのMT4は履歴CSVエクスポートが安定しており、長期データの一括取得も容易。複数口座での検証にも対応。XM公式サイトを見る →

CSV分析の結果から改善策を導く方法

分析結果から具体的な改善アクションを決めるための思考フレームを紹介します。

通貨ペア別PFが低い場合

特定の通貨ペアでPFが1.0を下回っている場合は、そのペアでのトレードをいったん停止します。過去200回のトレードを遡り、「損失トレードの時間帯」「損失トレードのセットアップ種別」を確認し、問題のパターンを特定します。

時間帯別で偏りがある場合

例えば「22〜24時台のトレードだけPFが0.7」という結果が出た場合は、その時間帯をトレード禁止ゾーンに設定します。ロンドン・NYオーバーラップ終了後の22時以降は流動性が低下しスプレッドが拡大しやすいため、スキャルピングに向かない時間帯です。

最大連続損失が多い場合

最大連続損失が10回を超えている場合は、ロット管理の問題である可能性が高いです。各トレードのリスクを口座残高の1〜2%以内に収めていれば、10連敗しても残高への影響は10〜20%にとどまります。ロット固定で取引している場合は即座に%リスク管理に切り替えることを推奨します。

約定履歴CSV分析に関するFAQ

MT4のCSVはどの文字コードで保存されますか?
MT4のCSVはShift-JIS(CP932)で保存されることが多いです。Excelで開く場合は自動認識されますが、Pythonで読む場合は `encoding='shift-jis'` または `encoding='utf-8-sig'` を試してください。文字化けする場合は別のエンコーディングで試してみてください。
MT4のレポートとMT5のレポートは形式が違いますか?
はい、列の並び順や項目名が一部異なります。MT5では「ポジションID」が加わり、MT4の「オーダーチケット」に相当します。PythonスクリプトでMT5のCSVを読む場合は、まず `df.head()` で列名を確認してから列指定を行ってください。
プロフィットファクターはどのくらいあれば優秀ですか?
一般的にはPF1.5以上が目標ラインです。PF2.0以上は優秀とされますが、サンプル数が少ない(50回以下)と信頼性が低くなります。最低でも200回以上のトレードでPF1.5以上を維持できていれば、再現性のある戦略と判断できます。
Pythonを使わずに高度な分析をする方法はありますか?
はい。Myfxbookというサービスに口座を連携させると、PF・DD・時間帯分析・通貨ペア別統計などをブラウザ上で自動表示できます。ただし口座情報の外部連携になるため、セキュリティポリシーを確認の上で利用してください。
分析はどのくらいの頻度で行うべきですか?
最低でも月1回、できれば週1回の実施を推奨します。週次分析はその週の問題を早期発見し、翌週への改善策を立てるのに有効です。月次分析では通貨ペア別・時間帯別の大きなトレンドを把握します。
EA(自動売買)のバックテスト結果とCSV分析は別物ですか?
別物です。バックテストは過去データへの当てはめで、CSVリアル口座の履歴分析は実際の取引結果です。EAのフォワードテスト(本番口座での運用)の結果をCSV分析することで、バックテストとの乖離を把握でき、EA改善の重要な手がかりになります。
この記事を書いた人

STARK(スターク)

Killer Picks Traders 運営者 / トレード歴14年 / EA・MQL4開発

USD/JPY・GBP/JPY・EUR/USDを中心に裁量と自動売買を併用。「Reduce before you increase」を哲学に、勝率より先にリスクとドローダウンの制御を徹底する手法を発信。

NEXT STEPS
1MT4/MT5から直近3ヶ月分の取引履歴をCSVでエクスポートする
2ExcelでPF・勝率・最大DDの3指標を計算し、弱点を特定する
3問題の通貨ペア・時間帯を特定し、次月のトレードルールに反映する

RECOMMEND

FXトレード入門 完全ガイド — ダウ理論・リスク管理・スタイル選びの体系図 1

📖 FXトレード入門 完全ガイド FXトレード入門|初心者が最初に学ぶべき基礎・手法・リスク管理の完全ガイド FXトレード入門。一度は検索したことがあるはずだ。だが、世間の入門記事はチ …

FXテクニカル分析手法・インジケーター・ダマシ対策・リスク管理を徹底解説 2

📊 テクニカル分析 完全ガイド テクニカル分析の完全ガイド|インジケーター・手法・リスク管理を徹底解説 「ゴールデンクロスで買ったのに逆行した」「RSI 70超えでもまだ上がる」——指 …

USDJPY分析の見方 3

市場分析 完全ガイド USDJPY分析の見方|押し目買いと戻り売りを判断する 3つの基準【完全ガイド2026】 ドル円で「押し目買いのつもりが高値掴み」になっていませんか?金利差・節目・時間帯の3点を …

ケリー基準とは 4

Money Management ケリー基準とリスクマネジメントFXで生き残るための資金管理の本質 「何%賭けるか」——この問いに数学的な答えを出したのがケリー基準だ。勝率とRR比から最適リスク割合を …

MT4・MT5完全ガイド 5

⚙️ MT4・MT5完全ガイド MT4・MT5完全ガイド|導入・設定・使い方からEA自動売買まで徹底解説 世界中のトレーダーが使うMT4・MT5。「どちらを選ぶべきか」「イ …

FXトレード手法の種類 6

📈 FXトレード手法 FXトレード手法の種類【2026年版】|スキャルピング・デイトレ・スイングの選び方と実戦リスク管理 スキャルピング・デイトレ・スイング・ポジション——手法の数だけ …

-トレードツール

Copyright© Killer Picks Traders – AIを駆使した次世代トレード分析メディア , 2026 All Rights Reserved.