Caius 3.6 EA MT4 source code download and deployment instructions | Grid EA download - MetaTrader 4 resources
Caius 3.6 EA strategy analysis report overview Caius 3.6 is an intelligent trading expert advisor (EA) based on the MetaTrader 4 platform, integrating a variety of advanced technical analysis methods and risk management strategies. The main features of this EA include: Integration of multiple technical indicators: Combined with ADX, RSI, Bollinger Bands, Fibonacci retracement and other indicators AI trend learning system: Use neural network for market trend prediction Order flow analysis: Real-time analysis of buying and selling power comparison Dynamic risk management: Includes Martingale strategy, fixed stop loss, percentage stop loss and other trend filtering mechanisms: Supports multiple trend confirmation conditions 1. Basic structure analysis 1.1 Input parameter configuration // General settings input double risk ratio = 0.001; // Risk ratio (number of trading lots per 100 US dollars of account funds) input double doubling points = 0.001; // doubling points (deprecated) input int distance = 20.0; // basic opening distance (points) input double basic adding distance = 10.0; // basic adding distance input double Martin multiple = 1.3; // Martingale multiple input int inFixed_SL = 100000; // Fixed stop loss amount (USD) input double inPercentage_SL = 100; // Percentage stop loss safety mechanism: Only specified accounts are allowed to use the built-in time limit, and it will stop automatically after expiration 2. Core strategy logic 2.1 Analysis of opening conditions EA uses multiple opening logic, executed in order of priority: 2.1.1 Basic opening logic (traditional grid strategy) // Long opening conditions if (Cek_Loss_daily() == false && // Daily loss check iOpen(NULL,0,0) < iClose(NULL,0,0) && // K line is Yang line Bid >= PricBuyLine && // The price breaks through the buy line LastType() != OP_BUY && // The last order is not a long order Count(-1) == 0) { // No position order // Execute opening} 2.1.2 Opening a position in the trend direction (advanced strategy) When opening a position in the trend direction is enabled, trend analysis is performed first: bool OpenTradeByTrend() { // 1. Update the indicator status UpdateIndicatorStatus(); // 2. Calculate the comprehensive trend score double trend_score = 0; // ADX trend strength (weight 0.35) // RSI overbought and oversold status (weight 0.25) // Bollinger Band status (weight 0.25) // Moving average crossover status (weight 0.15) // Fibonacci retracement judgment (weight 0.2) // 3. Determine the position opening direction based on the score if (trend_score > 0.5) { // Open a long position } else if (trend_score < -0.5) { // Open a short position } } 2.1.3 Enhanced order flow opening When order flow analysis is enabled, the position opening direction is further optimized: if (order flow analysis enabled) { if(orderFlow.buyPower > orderFlow.sellPower) { // If the buy signal is strong, open a long order} else { // If the sell signal is strong, open a short order} } 2.2 Technical indicator system 2.2.1 ADX indicator (average trend index) Period: ADX period = 12 (default) Threshold: ADX threshold = 25 (default) Function: Determine the strength of the market trend, ADX > 25 indicates a trend 2.2.2 RSI indicator (relative strength index) Period: RSI_Period = 14 (default) Overbought threshold: RSI_Overbought = 70 Oversold threshold: RSI_Oversold = 30 Function: Identify overbought and oversold conditions 2.2.3 Bollinger Band indicator period: BB_Period = 20 Standard deviation multiple: BB_Deviation = 2.0 Function: Determine the relative position and volatility of price 2.2.4 ATR indicator (average true volatility) Period: ATR period = 7 Function: Dynamically adjust the position adding distance 2.2.5 Fibonacci retracement function: Determine the price position on the Fibonacci level Key levels: 38.2%, 50%, 61.8% 2.3 Dynamic position adding system 2.3.1 Traditional Martingale strategy Lot = Lot pow (Martin multiple, orderCount); // After each loss, increase the number of lots according to the multiple. 2.3.2 Incremental multiple increase input bool EnableIncrementalMartingale = false; // Enable incremental multiple increase input double InitialMultiplier = 1.0; // Initial multiple input double IncrementStep = 0.1; // Increment step input double MaxMultiplier = 1.5; // Maximum multiple input int BaseLotsCount = 3; // Basic lot number 2.3.3 Dynamic distance adjustment double GetDynamicDistance() { if (! Enable dynamic adding distance) return basic adding distance; double atrValue = iATR(NULL, 0, ATR period, 1); double adxValue = GetADXValue(); // Dynamically adjust the volatility sensitivity coefficient double dynamicCoefficient = volatility coefficient (1 + MathMin(adxValue, 50) / 100); double dynamic distance = basic adding distance + (atrValue / _Point dynamicCoefficient); return MathMax(dynamic distance, basic adding distance 0.5); } 3. AI trend learning system 3.1 System architecture struct AITrendLearner { double weights[][]; // Neural network weights double biases[][]; // Neural network bias int layers; // Number of network layers int neuronsPerLayer; // Number of neurons per layer}; 3.2 Learning parameter configuration input bool Enable AI trend learning = true; // Enable AI trend learning input int Learning period = 1000; // Historical data learning period input int Prediction period = 20; // Future prediction period input double Learning rate = 0.01; // Learning rate input int Number of neural network layers = 3; // Neural network hidden layer input int Neurons per layer = 10; // Number of neurons per layer 3.3 Feature extraction void ExtractFeatures(int shift, double &features[]) { // Price data features features[0] = iClose(Symbol(), 0, shift); features[1] = iHigh(Symbol(), 0, shift) - iLow(Symbol(), 0, shift); // Technical indicator features features[2] = iADX(Symbol(), 0, ADX period, PRICE_CLOSE, MODE_MAIN, shift); features[3] = iRSI(Symbol(), 0, RSI_Period, PRICE_CLOSE, shift); // Bollinger Bands features features[4] = iBands(Symbol(), 0, BB_Period, BB_Deviation, 0, PRICE_CLOSE, MODE_UPPER, shift); features[5] = iBands(Symbol(), 0, BB_Period, BB_Deviation, 0, PRICE_CLOSE, MODE_LOWER, shift); // Moving average features features[6] = iMA(Symbol(), 0, trend average period, 0, MODE_SMA, PRICE_CLOSE, shift); } 3.4 Prediction logic double PredictTrend(double &features[]) { // Forward propagation double layerOutput[]; ArrayCopy(layerOutput, features); for(int i = 0; i < layers; i++) { layerOutput = ForwardPass(layerOutput, i); } // Return prediction result (between 0-1) return layerOutput[0]; } 4. Order flow analysis system 4.1 Data structure struct OrderFlowData { double buyPower; // Buy power double sellPower; // Sell power string flowReason; // Analysis reason}; 4.2 Weight configuration input bool Enable order flow analysis = true; // Enable order flow analysis inputdouble order flow weight = 0.6; // Order flow analysis weight input double technical indicator weight = 0.4; // Technical indicator weight 4.3 Dynamic weight adjustment struct DynamicWeights { double trend_weight; // Trend weight double flow_weight; // Order flow weight double ai_weight; // AI weight}; DynamicWeights GetDynamicWeights() { // Dynamically adjust the weight according to market volatility double volatility = iATR(Symbol(), 0, 14, 0) / iClose(Symbol(), 0, 0); if(volatility > 0.02) { // High volatility period return {0.3, 0.5, 0.2}; // Increase order flow weight} else { // Low volatility period return {0.4, 0.3, 0.3}; // Balance weight} } 5. Risk management system 5.1 Multiple stop loss mechanism 5.1.1 Fixed amount stop loss if(Calculate <= -inFixed_SL) { // Close all orders} 5.1.2 Percent stop loss double Percentage = NormalizeDouble((inPercentage_SL/100) * Balance, 2); if(Calculate <= -Percentage) { // Close all orders} 5.1.3 Daily loss limit bool Cek_Loss_daily() { double dailyLoss = -ProfitDey(-1); return (dailyLoss >= DailyProfitLimit); } 5.2 Maximum floating loss monitoring // Real-time update of the maximum floating loss of various periods MaxDrawdownDay = MathMax(MaxDrawdownDay, currentDrawdown); MaxDrawdownYesterday = MathMax(MaxDrawdownYesterday, currentDrawdown); MaxDrawdownWeek = MathMax(MaxDrawdownWeek, currentDrawdown); MaxDrawdownMonth = MathMax(MaxDrawdownMonth, currentDrawdown); 5.3 Transaction time limit input int TimeStart = 0; // Start time (hours) input int TimeEnd = 23; // Stop time (hours) 6. Program execution flow 6.1 Initialization phase (OnInit) License verification Check whether the account ID matches Check whether the EA has expired Parameter initialization settings Chart display properties Initialization global variables Calculate point values and decimal places Indicator initialization Create price reference lines Initialization Fibonacci levels Initialization AI learning system training historical data 6.2 Main loop phase (OnTick) graph TD A[Start OnTick] --> B[License and time check] B --> C[Daily profit limit check] C --> D[Calculate dynamic risk parameters] D --> E[Update indicator status] E --> F{Is there a position?} F -->|None| Advanced strategy to judge trend direction and open a position (highest priority) Order flow analysis optimization AI forecast confirmation Dynamic lot calculation Basic risk calculation Martingale multiple adjustment Incremental multiple application 6.2.2 Position closing logic Passive closing: automatic closing when stop loss condition is reached Active closing: no fixed take profit, rely on dynamic stop loss 6.3 Indicator update process is executed every 10 ticks: Update all technical indicator values Calculate trend status Update order flow data Refresh information panel display 7. Key function analysis 7.1 OpenTradeByTrend() - Trend opening function function: Calculate trend scores based on multiple indicators and determine the direction of opening positions. Algorithm process: Update all indicator status to calculate ADX trend strength score (weight 35%). Calculate RSI overbought and oversold score (weight 25%). Calculate Bollinger Band position score (weight 25%). Calculate moving average crossover score (weight 15%). Calculate Fibonacci position score (weight 20%). The comprehensive score determines the opening of a position 7.2. ShouldOpenPosition() – Comprehensive position opening judgment function: A comprehensive judgment and scoring mechanism that integrates trend, order flow, and AI prediction: Trend score: ADX strength assessment Order flow score: Buying and selling power comparison AI score: Position opening is allowed when the final score of the neural network prediction result is > 0.3 7.3 GetDynamicDistance() – Dynamic distance calculation function: Dynamic distance calculation formula for adding a position is dynamically adjusted based on market volatility: Dynamic distance = Basic position adding distance + (ATR value × Volatility coefficient × ADX adjustment) 7.4 CloseAll() – Risk closing function: monitor account losses and perform forced liquidation. Conditions for closing positions: fixed amount loss ≥ inFixed_SL percentage loss ≥ inPercentage_SL 8. Advantages and features 8.1 Technical advantages Multi-strategy integration: traditional grid + trend tracking + AI prediction adaptive algorithm: dynamic weight adjustment, multiple risk controls optimized according to market conditions: fixed stop loss + percentage stop loss + daily limit Intelligent decision-making: AI learns historical data and predicts trends 8.2 Practical features Visual interface: Real-time display of account status and market indicators Adjustable parameters: Rich input parameters, support for personalized configuration Stability guarantee: Complete error handling and exception protection 9. Potential risks and suggestions 9.1 Risk point analysis Martingale risk: The number of lots doubles during continuous losses, which may lead to major losses AI over-fitting: Neural networks may over-fit historical data Market changes: Strategy parameters may need to be adjusted regularly 9.2 Recommendations for use Small-amount testing: It is recommended to test strategy performance with small amounts of funds first. Parameter optimization: Adjust parameters according to different varieties and market environments. Risk control: Strictly control single transactions and daily total risk monitoring. Important: Regularly check strategy performance and make timely adjustments!
Caius 3.6 2.zip
downloadCaius 3.6 EA MT4 source code download and deployment instructions key points before use
This page has been reorganized according to the reading path of search users, focusing on the applicable scenarios of EA source code, MQL4/MQL5 platform compatibility, parameter testing methods and real-time risk warnings, so as to quickly judge whether it is worth continuing to test before downloading or deploying.
Suitable for who to use
- Traders who need to quickly screen EA source code and are willing to do simulation verification first.
- People who are already familiar with the MT4/MT5 installation process and want to compare different EAs, indicators or source code projects.
- People who want to record the backtest, parameters and risk control before deciding whether to enter the real market.
Testing and risk control suggestions
- First use the default parameters for basic backtesting, and then adjust them one by one according to the variety, cycle and spread.
- Grid, Martin, and scalping strategies should focus on observing maximum drawdown, continuous losses, and trading frequency.
- It is recommended to observe the simulated trading performance for at least 2-4 weeks before the actual trading, and limit the account risk proportion of a single strategy.
FAQ
Can this file be sold directly?
It is not recommended to make a direct offer. Any EA or indicator requires first checking the source, parameters, platform version and historical performance.
Can MT4 and MT5 be used interchangeably?
Usually it cannot be used directly. MQ4/EX4 corresponds to MT4, MQ5/EX5 corresponds to MT5, and the source code project also needs to be compiled in the corresponding MetaEditor.
What else can I continue to watch?
Forex EA download , foreign exchange indicator download , EA evaluation , GitHub open source EA , MQL5 CodeBase .
English Search Notes
This page is also optimized for English search intent around Caius 3.6 EA MT4 source code download and deployment instructions . Related search terms include: MQL4 source code, MQL5 source code. Test any Forex EA, Expert Advisor, MT4/MT5 indicator or MQL source code with historical data and a demo account before live trading.
💡 Featured Recommendations
✍️ Latest by the author
- •
- •
- •
- •
- •
- •
📌 Popular topics
- •
- •
- •
- •
- •
- •
- •
- •
🔗 You May Be Interested In
- •
- •
- •
- •
- •
- •