MQL4MQL5 EA(エキスパートアドバイザー) 資金管理・リスク

今日の確定損益を計算したい

結論:今日(サーバー時刻)の 0 時以降に決済した取引の損益を、履歴から合計します。

考え方

1日の損失が一定を超えたらその日は取引をやめる、といったルールでは、今日の確定損益が必要です。今日の 0 時(サーバー時刻)は iTime(_Symbol, PERIOD_D1, 0) で取得できます。MQL4 は決済時刻が今日以降の決済済み注文を、MQL5 は今日の決済ディールを合計します。

  1. 今日の 0 時(サーバー時刻)を求める
  2. その時刻以降に決済した、この EA の取引を履歴から探す
  3. 損益+スワップ+手数料を合計する

そのまま使えるコード

MetaEditor の「新規作成」で「エキスパートアドバイザ(テンプレート)」を選び、できたファイルの中身をすべてこのコードに置き換えてコンパイル(F7)します。ファイルは Experts フォルダに保存され、ナビゲーターからチャートにドラッグして使います。

MQL4(MT4)

#property strict
// 今日の確定損益を表示する EA(MT4)
input int InpMagic = -1;   // マジックナンバー(-1 ならすべて)

double TodayProfit()
{
   datetime today = iTime(_Symbol, PERIOD_D1, 0);
   double sum = 0;
   for(int i = OrdersHistoryTotal() - 1; i >= 0; i--)
   {
      if(!OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) continue;
      if(OrderType() > OP_SELL || OrderCloseTime() < today) continue;
      if(InpMagic >= 0 && OrderMagicNumber() != InpMagic) continue;
      sum += OrderProfit() + OrderSwap() + OrderCommission();
   }
   return sum;
}

int OnInit()
{
   return INIT_SUCCEEDED;
}

void OnDeinit(const int reason)
{
   Comment("");
}

void OnTick()
{
   Comment("今日の確定損益:", DoubleToString(TodayProfit(), 0), " ", AccountCurrency());
}

MT4 版・MT5 版とも MetaEditor でコンパイル(エラー・警告なし)を確認済みです。実際の口座で使う前に、デモ口座やストラテジーテスターで動作を確かめてください。

カスタマイズのポイント

  • 「今日の損失が◯円を超えたら新規注文しない」にするなら、売買の条件に TodayProfit() > -上限 を足します。

注意点

  • 日付の区切りはサーバー時刻です。日本時間の 0 時ではありません。
  • MT4 で集計できるのは「口座履歴」タブに読み込まれている期間だけです。
  • MT5 の手数料はエントリー時のディールにも付くため、ここでは決済側の分だけを足しています。

このコードで使っている関数

あわせて読みたいレシピ

「資金管理・リスク」のレシピ一覧

← MQL逆引き辞典で、ほかのやりたいことを探す

サイバーシグナルインジケーターと8大特典プレゼント

MT4/MT5自動売買EAサイバーラッシュ無料プレゼント

MT4/MT5自動売買EAサイバードラゴン無料プレゼント

グルグルトレイン(グルトレ)EAを無料プレゼント

ライントレードEAサイバートレナビを無料プレゼント

ゴトー日の東京仲値が狙える自動売買EA

LINE友だち追加

注目記事ランキング

  1. 1

    【サクソバンクチャート】月曜日の早朝から動く為替レート

  2. 2

    【MT4/MT5対応】チャート上に手書きできる描画インジケーターの無料配布

  3. 3

    【サンデーダウ・サンデードル円】土日に動く中東レートの表示方法と見方を解説

  4. 4

    【先着50名】グルトレEAを無料プレゼントしています!

  5. 5

    保護中: 【勝率UP!】曜日や日・月別為替相場の動きでFXを見極める

  6. 6

    【MT4/MT5対応】「sign_alert」シグナルアラートやメール送信するインジケーターの無料配布

  7. 7

    無料メールマガジン「マナブ式FX」|毎朝6時、今日の為替相場予想が届く

  8. 8

    【原油・金】WTIとゴールドの商品レート一覧と見やすいチャート

  9. 9

    VQインジケーターとは?MT4/MT5版を無料配布【設定例つき】

  10. 10

    【バイナリーオプション攻略法】全勝!+497,363円の利益が出た手法とは?

TOP
CLOSE