Warrior_EA/Variables/Inputs.mqh

85 lines
5.8 KiB
MQL5
Raw Permalink Normal View History

2025-05-30 16:35:54 +02:00
//+------------------------------------------------------------------+
//| Inputs.mqh |
//| AnimateDread |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "AnimateDread"
#property link "https://www.mql5.com"
#include "..\Enumerations\InputEnums.mqh"
//--- Expert General Settings
input string Expert_Settings = "Warrior EA Configuration"; // Warrior EA Configuration
input ulong Expert_MagicNumber = 2024; // Unique identifier for EA's orders
input bool trainingMode = false; // Reset EA on next start
bool Expert_EveryTick = true; // Calculate technical analysis on every tick
bool VerboseMode = false; // Detailed logging in the journal
//--- Money Management Settings
input string MM_Settings = "Money Management Settings"; // Money Management Settings
input MONEY_MANAGEMENT_STRATEGY MM_STRATEGY = FIXED_RISK; // Select MM strategy
input double Money_FixLot_Lots = 0.01; // Fixed trading volume [0.01-10]
input SIMPLE_NUMBERS Money_Risk_Percent = x1; // Percentage of account balance to risk per trade
//--- Entry Strategy Settings
input string Entry_Settings = "Entry Settings"; // Entry Settings
input TradingDirection tradingdirection = BOTH; // Allowed trading direction (Buy, Sell, Both)
THRESHOLDS_PRESET Open_Coef = T10; // Open trade threshold
THRESHOLDS_PRESET Close_Coef = T10; // Close trade threshold
input ENTRY_MULTIPLIER Entry_Multiplier = MARKET; // Entry price offset multiplier based on ATR
input BARS_EXPIRATION Signal_Expiration = BARS_X3; // Time to expiration for pending orders (in bars)
bool UseDatabaseRanking = false; // Use time based win rates for filters weights
//--- Trailing Stop Settings
input string Trailing_Settings = "Trailing Settings"; // Trailing Settings
input TRAILING_STRATEGY TrailingStrategy = TRAILING_STRATEGY_NONE; // Default Trailing stop strategy
//--- Neural Networks Settings
input string NNetworks_Settings = "Neural Networks Settings"; // Neural Networks Settings
input AI_CHOICE AIType = 0; // Artificial Intelligence algorithm
input AI_OPTIMIZATION_ALGO AIOptAlgo = sgd; // Neurons optimization algorithm
input TRAINING_YEARS_PRESET StudyPeriods = y10; // No. of years for AI Training
input PERCENTAGE_PRESETS MinWR = x80; // Min. Win Rate to stop training
input OUTPUT_NEURONS_COUNT OutputNeuronsCount = n3; // Type of output algorithm
input FIRST_LAYER_NEURONS InitialNeurons = n1000; // No. of neurons in first hidden layer
input HIDDEN_LAYERS_COUNT HiddenLayersCount = L5; // No. of hidden layers
input MIN_NEURONS_COUNT MinNeuronsCount = n20; // Min. No. neurons per hidden layer
input NEURONS_REDUCTION_FACTOR NeuronsReduction = p80; // Neurons reduction per hidden layer
//--- Global Indicator Settings
input string Indicator_Settings = "Indicator Settings"; // Input Data Settings (applies globally)
input IND_PERIODS_PRESETS ind_Periods = PERIOD_5; // Number of candles to analyse
input ENUM_MA_METHOD MethodMA = MODE_SMA; // Moving Average method
input ENUM_APPLIED_VOLUME VolumeData = VOLUME_TICK; // Volume Data
input string AISignals = "AI Signals"; // AI Signals
input bool EnableVolume = true; // Analyse Volume Patterns
input bool EnableTime = true; // Analyse Temporal Patterns
input bool EnableATR = true; // Analyse Volatility Patterns
input bool EnableAlligator = false; // Analyse Alligator Indicator Patterns
input bool EnableBWMFI = false; // Analyse Market Facilitation Index Patterns
input bool EnableGator = false; // Analyse Gator Oscillator Patterns
input bool EnableAD = false; // Analyse Accumulation/Distribution Patterns
input bool EnableADX = false; // Analyse Average Directional Movement Index Patterns
input bool EnableBands = false; // Analyse Bollinger Bands Patterns
input bool EnableMFI = false; // Analyse Money Flow Index Patterns
input bool EnableOBV = false; // Analyse On-Balance Volume Patterns
//input string HybridSignals = "Hybrid Signals"; // Hybrid Signals
input bool EnableAC = false; // Analyse Accelerator Oscillator Patterns
input bool EnableAO = false; // Analyse Awesome Oscillator Patterns
input bool EnableCCI = false; // Analyse Commodity Channel Index Patterns
input bool EnableMACD = false; // Analyse Moving Average Convergence Divergence Patterns
input bool EnableRSI = false; // Analyse Relative Strength Index Patterns
input bool EnableRVI = false; // Analyse Relative Vigor Index Patterns
input bool EnableSTOCH = false; // Analyse Stochastic Oscillator Patterns
input bool EnableSAR = false; // Analyse Parabolic SAR Patterns
input bool EnableWPR = false; // Analyse Williams' Percent Range Patterns
//--- Time Filter Settings
input string SF_Settings = "Time Related Settings"; // Session Filter Settings
input CLOSE_DAYS_PRESETS targetDayOfWeek = CLOSE_EVERYDAY; // Preferred day for closing positions
input CLOSE_HOURS_PRESETS targetHour = H_22; // Preferred hour for closing positions
input CLOSE_MINS_PRESETS targetMinutes = M_0; // Preferred minute for closing positions
input bool SF_trade_LondonSession = false; // Trade during London session
input bool SF_trade_TokyoSession = false; // Trade during Tokyo session
input bool SF_trade_NewYorkSession = true; // Trade during New York session
input ITF_TOD ITF_GoodHourOfDay = -1; // Preferred trading hour
input int ITF_BadHoursOfDay = 0; // Hours to avoid trading
input ITF_DOW ITF_GoodDayOfWeek = -1; // Preferred trading day
input int ITF_BadDaysOfWeek = 0; // Days to avoid trading
//--- News Filter Settings
input string NF_Settings = "News Filter Settings"; // News Filter Settings
input NF_LOOKBACK_PRESETS NF_LookMinutes = M240; // Lookback period to avoid trading around news
input NF_IMPACT_PRESETS NF_MinImpact = HOLIDAYS; // Minimum news impact to filter out