NeuroPrice Navigator
- Experts
- Versão: 2.0
- Ativações: 5
NeuroPrice Navigator 2.0 — intelligent trading advisor based on the TCNN-LSTM neural network model with an attention mechanism
Brief description
NeuroPrice Navigator 2.0 is a fully automated trading advisor for MetaTrader 4 that uses a hybrid TCNN-LSTM neural network architecture with a Feature Attention mechanism to predict the direction of price movement and make trading decisions. The advisor trains itself on historical data, adapts to changing market conditions, and is equipped with a built-in risk management system.
Principle of operation
The advisor is based on its own neural network model, which combines three key components:
-
Temporal Convolutional Neural Networks (TCNN) — analyze a sequence of 64 previous bars, identifying local patterns and impulsive market movements. Two convolutional layers with 24 and 12 filters allow the model to recognize short-term and medium-term structures in price data.
-
Feature Attention mechanism — evaluates the importance of each feature at each moment in time, automatically focusing on the most significant signals. This allows the model to ignore market noise and highlight truly important patterns.
-
Long Short-Term Memory (LSTM) — processes the time sequence after the convolutional layers and the attention mechanism, remembering long-term dependencies and market context. A recurrent layer of 12 LSTM blocks allows the model to take history into account when forming a forecast.
The model outputs the probability of price growth (P(up)) in the range from 0 to 1. Based on this value, a trading signal is formed:
-
P(up) ≥ 0.65 — strong BUY signal;
-
P(up) ≤ 0.35 — strong SELL signal;
-
0.35 < P(up) < 0.65 — uncertainty zone, no trade is opened.
The advisor automatically retrains every 12 bars on a rolling history window (600 bars by default), using backpropagation through time (BPTT) with an adaptive learning rate and L2 regularization. The training process includes cross-validation with chronological fold splitting, which prevents overfitting and ensures the model’s robustness to market changes.
Advantages
-
Self-learning and adaptability. The advisor does not require manual optimization for a specific currency pair — it trains directly on the chart data where it is installed and automatically rebuilds the model weights when the market regime changes.
-
Hybrid architecture. The combination of convolutional layers, an attention mechanism, and LSTM allows it to simultaneously capture short-term impulses, medium-term trends, and long-term context, which produces more accurate forecasts compared to single-type models.
-
Multi-level deposit protection. Built-in risk management mechanisms include adaptive lot calculation based on free margin, drawdown protection (volume reduction when a specified level is reached), a limit on the maximum number of concurrent positions, spread control, and a volatility filter.
-
Flexible position management. Real and virtual stop losses and take profits are supported, along with a trailing stop with activation and step settings, as well as dynamic distance between orders based on ATR.
-
Information panel. The chart displays a detailed panel with the current signal, model confidence, account status, drawdown, and training progress. The panel also contains manual control buttons (BUY / SELL / CLOSE).
-
State saving. All model parameters, optimizer parameters, and the feature cache are saved to a single file, which allows training to continue after restarting the terminal without losing accumulated knowledge.
Input parameters
Main settings
| Parameter | Description | Default value |
|---|---|---|
| MagicNumber | Unique identifier for the advisor’s orders | 2456 |
| SessionStart | Trading session start (UTC hours) | 9 |
| SessionEnd | Trading session end (UTC hours) | 23 |
| UTCOffset | Server time offset from UTC (hours) | 0 |
| EnableDebugLogging | Enable detailed logging | true |
| FixSeedForTesting | Fix the random number generator for testing | true |
Risk management
| Parameter | Description | Default value |
|---|---|---|
| LotCalculationMode | Lot calculation mode: fixed or based on free margin | LOT_MODE_FIXED |
| FixedLotSize | Fixed lot size | 0.01 |
| RiskPercent | Risk per trade (% of free margin) | 1.0 |
| UseEquityProtection | Reduce lot at high drawdown | true |
| MaxDrawdownPercent | Drawdown (%) after which lot reduction begins | 20.0 |
| MaxConcurrentTrades | Maximum number of concurrent positions | 3 |
Execution and broker
| Parameter | Description | Default value |
|---|---|---|
| InpOrderComment | Order comment | Trade |
| MaxSpreadPoints | Maximum allowed spread (points) | 40 |
| MaxSlippagePoints | Maximum slippage (points) | 5 |
| ExecutionRetries | Number of order submission attempts | 3 |
| ExecutionRetryDelayMs | Delay between attempts (ms) | 250 |
| EnableExecutionDiagnostics | Detailed execution diagnostics | true |
Real SL / TP
| Parameter | Description | Default value |
|---|---|---|
| StopLoss | Stop loss (points), 0 — disabled | 400 |
| TakeProfit | Take profit (points), 0 — disabled | 200 |
Virtual SL / TP
| Parameter | Description | Default value |
|---|---|---|
| UseVirtualSL | Enable virtual stop loss | false |
| VirtualStopLoss | Virtual stop loss (points) | 0 |
| UseVirtualTP | Enable virtual take profit | false |
| VirtualTakeProfit | Virtual take profit (points) | 0 |
Trailing stop
| Parameter | Description | Default value |
|---|---|---|
| UseTralling_Stop | Enable trailing stop | true |
| UseAveragePrice | Use the average entry price across all positions | true |
| TrallingStart | Profit to activate trailing (points) | 400.0 |
| TrailingDistance | Distance from price to stop loss (points) | 200.0 |
| TrailingStep | Minimum SL improvement for modification (points) | 50.0 |
Distance between orders
| Parameter | Description | Default value |
|---|---|---|
| FixedDistancePoints | Fixed distance (points) | 300 |
| UseDynamicDistance | Use ATR-based distance | false |
| DynamicDistanceAtrPeriod | ATR period for dynamic distance | 10 |
| DynamicDistanceMultiplier | Multiplier for dynamic distance | 1.2 |
TCNN-LSTM model parameters
| Parameter | Description | Default value |
|---|---|---|
| ML_TrainingPeriod | Training period (bars) | 600 |
| ML_RetrainInterval | Retraining interval (bars) | 12 |
| Lookback_Window | History depth for analysis (bars) | 64 |
| ForecastBars | Number of bars for forecast | 3 |
| ForecastThreshold | Forecast threshold (ATR multiplier) | 0.5 |
| CNN_Filters | Number of CNN filters | 24 |
| Kernel_Size | Convolution kernel size | 5 |
| LSTM_Units | Number of LSTM units | 12 |
| ML_LearningRate_Input | Base learning rate | 0.005 |
| ML_DropoutRate | Dropout during training | 0.20 |
| ML_BuyThreshold | BUY threshold: P(up) ≥ this value | 0.65 |
| ML_SellThreshold | SELL threshold: P(up) ≤ this value | 0.35 |
| L2_Lambda | L2 regularization coefficient | 0.001 |
| Target_MSE | Target MSE value for early stopping | 0.1 |
| Max_Epochs | Maximum number of training epochs | 10 |
| EnableShuffle | Shuffling (kept for compatibility) | false |
| ML_BatchSize | Batch size | 16 |
| ML_WalkForwardFolds | Number of cross-validation folds | 3 |
| ML_LRPatience | Epochs without improvement before LR reduction | 6 |
| ML_LRDecayFactor | LR decay factor | 0.5 |
| ML_MinLearningRate | Minimum learning rate | 0.0001 |
| ML_EnableGradientDiagnostics | Gradient diagnostics | false |
| ML_BPTT_GradClipNorm | Global gradient clipping norm | 5.0 |
| ML_BPTT_SampleClipNorm | Per-sample gradient clipping norm | 10.0 |
| ML_BPTT_StateClip | LSTM state clip | 10.0 |
| ML_BPTT_DeltaClip | Limit for dh/dc at the BPTT step | 5.0 |
Feature attention mechanism
| Parameter | Description | Default value |
|---|---|---|
| Attention_Heads | Number of attention heads | 2 |
| Enable_Contextual_Attention | Enable contextual attention | true |
| Attention_Temperature | Temperature for scaling | 1.0 |
| Attention_Dropout | Dropout for the attention mechanism | 0.1 |
Indicator parameters
| Parameter | Description | Default value |
|---|---|---|
| ADX_Period | ADX period | 10 |
| CCI_Period | CCI period | 14 |
| WPR_Period | Williams %R period | 12 |
| STD_Dev_Period | Standard deviation period | 12 |
| MFI_Period_New | Money Flow Index period | 10 |
| ATR_Period | ATR period | 12 |
Volatility filter
| Parameter | Description | Default value |
|---|---|---|
| Volatility_Filter | Enable volatility filter | false |
| Min_Volatility | Minimum volatility (ATR value) | 0.0003 |
| Max_Volatility | Maximum volatility (ATR value) | 0.012 |
Usage recommendations
The advisor is intended for trading currency pairs with moderate volatility (for example, EURUSD, GBPUSD, USDJPY). Before launching on a live account, it is recommended to test the advisor in the MetaTrader 4 Strategy Tester with a fixed initial deposit (for example, $10,000) and 1:100 leverage. The default parameters are optimized for the M15 timeframe and can be used without additional configuration.
