// グローバル変数 // 証拠金チェック int aCmd = 0; // オープンブロックのポジションカウント内最後 aCmd = OrderType(); // オープンブロックのエントリー条件文~注文部全部を挟む // 証拠金不足・トレード許可チェック if (EquityCheck()) { } // 任意の空いているスペース //+------------------------------------------------------------------+ bool EquityCheck() { // 証拠金不足・トレード許可チェック double usedMoney = AccountEquity() - AccountFreeMarginCheck(Symbol(), aCmd, CalculateLots(MM_Risk, StopLoss_pips)); if (!( (AccountStopoutMode() == 0 && usedMoney > 0.0 && (AccountEquity() / usedMoney) * 100 <= AccountStopoutLevel()) || (AccountStopoutMode() == 0 && usedMoney > 0.0 && AccountFreeMarginCheck(Symbol(), aCmd, CalculateLots(MM_Risk, StopLoss_pips)) <= 0) || (AccountStopoutMode() == 1 && AccountFreeMarginCheck(Symbol(), aCmd, CalculateLots(MM_Risk, StopLoss_pips)) <= AccountStopoutLevel()) ) && IsTradeAllowed() == true) // トレード許可判定 { return(true); } else return(false); } //+------------------------------------------------------------------+ // ※StopLoss_pipsの変数は、仕様により要変更 // 参考サイト // https://autofx100.com/2021/03/01/ordersend-error-134-not-enough-money/