static bool FastCalculating(int startBar)
{
bool isFastCalc = false;
if (session[startBar].Positions != 0)
return isFastCalc;
if (Configs.TradeUntilMarginCall &&
session[startBar].Summary.FreeMargin < RequiredMargin(TradingSize(Strategy.EntryLots, startBar), startBar) ||
session[startBar].Summary.FreeMargin < -1000000)
{
for (int bar = startBar; bar < Bars; bar++)
{
session[bar].Summary.Balance = session[bar - 1].Summary.Balance;
session[bar].Summary.Equity = session[bar - 1].Summary.Equity;
session[bar].Summary.MoneyBalance = session[bar - 1].Summary.MoneyBalance;
session[bar].Summary.MoneyEquity = session[bar - 1].Summary.MoneyEquity;
session[bar].SetWayPoint(Open[bar], WayPointType.Open);
ArrangeBarsHighLow(bar);
session[bar].SetWayPoint(Close[bar], WayPointType.Close);
}
isFastCalc = true;
}
return isFastCalc;
}