Exp_BSI
This EA trades based on the BSI (Buy Sell Indicator) custom indicator signals. It opens buy positions when the BSI signals bullish momentum (value transitions to 2) and sell positions when it signals bearish momentum (value transitions to 0), with optional position closing on opposite signals. Money management is configurable via multiple margin modes including lot-based, balance percentage, and free margin percentage.
Open the interactive view (equity curve, symbol switch)Key facts
Backtest results (H1, about 1 year)
Not backtested yet — this EA could not be converted automatically.
Strategy analysis
The core strategy of this EA follows momentum direction signals generated by the BSI custom indicator. Entry conditions: a buy signal is triggered when BSI indicator buffer 3 transitions from a non-2 value to 2, and a sell signal is triggered when it transitions from a non-0 value to 0. Exit conditions: opposite signals can close existing positions if BuyPosClose and SellPosClose are enabled, while fixed StopLoss (1000 points) and TakeProfit (2000 points) provide additional exit mechanisms. Position sizing is managed through the MM parameter and MMMode enum, supporting four modes: free margin percentage, balance percentage, loss-adjusted free margin percentage, loss-adjusted balance percentage, and fixed lot size. The strategy employs a new bar detection mechanism (CIsNewBar) to ensure signals are calculated only once per bar, preventing redundant trade entries. Indicator parameters include Range Period (20), Slowing (3), Avg Period (3), and volume weight selection, with smoothing and averaging applied to reduce false signals.
Strengths
- New bar detection mechanism prevents redundant trade entries within the same bar, reducing unnecessary transactions
- Multiple money management modes provide flexibility to suit different traders' risk preferences
- Complete stop loss and take profit configuration with default 2:1 reward-to-risk ratio suggesting positive expectancy
- Independent control for buy/sell open and close operations provides high strategy flexibility
- Indicator smoothing and averaging reduce the impact of false signals
Weaknesses
- StopLoss of 1000 points and TakeProfit of 2000 points are very large, potentially causing significant drawdowns on H4 timeframe
- No scaling in or out logic, unable to add positions when trends continue
- No spread filter mechanism, which may be disadvantageous in high-spread environments
- Depends on a custom BSI indicator whose internal logic is opaque, making signal validation difficult
- Signals based on a single indicator without multi-dimensional confirmation, prone to false breakouts
Possible improvements
- Add multi-timeframe confirmation, e.g., verify H4 signals align with daily trend direction before entry
- Implement dynamic stop loss and take profit based on ATR or volatility instead of fixed point values
- Add spread filter and time filter (e.g., avoid news events and low liquidity sessions) to reduce unfavorable fills
Risk assessment
Overall risk: Medium
- 1000-point stop loss is very large, a single losing trade could represent a significant portion of the account
- Dependency on external custom indicator - missing or incompatible indicator file causes EA initialization failure
- No maximum position limit or account-level risk control mechanism
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Money management ratio or lot size |
MMMode | LOT | Position sizing mode: Free margin/Balance/Net margin/Net balance/Fixed lot |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum allowed slippage |
BuyPosOpen | true | Allow opening long positions |
SellPosOpen | true | Allow opening short positions |
BuyPosClose | true | Allow closing long positions |
SellPosClose | true | Allow closing short positions |
InpInd_Timeframe | PERIOD_H4 | Indicator calculation period |
InpRangePeriod | 20 | BSI indicator range period |
InpSlowing | 3 | BSI indicator smoothing period |
InpAvgPeriod | 3 | BSI indicator averaging period |
InpUsingVolumeWeight | ENUM_TICKVOLUME | Volume weight: None/Volume/Tick volume |
SignalBar | 1 | Signal detection bar index (0 = current bar) |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.