Site icon Trickbd.com

đŸĻ TradeMux: Quant Trading-āĻāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ Unified Execution Backbone — Python Intelligence āĻĨ⧇āϕ⧇ MetaTrader āĻ“ Multiple Broker āĻĒāĻ°ā§āϝāĻ¨ā§āϤ Complete Architecture, Integration āĻāĻŦāĻ‚ Step-by-Step Tutorial!

āφāϧ⧁āύāĻŋāĻ• Quantitative Trading-āĻ āϏāĻŦāĻšā§‡ā§Ÿā§‡ āĻŦ⧜ āĻšā§āϝāĻžāϞ⧇āĻžā§āϜ āĻļ⧁āϧ⧁ āĻāĻ•āϟāĻŋ āĻ­āĻžāϞ⧋ Trading Strategy āϤ⧈āϰāĻŋ āĻ•āϰāĻž āύ⧟āĨ¤ āĻŦāϰāĻ‚ āϏ⧇āχ Strategy-āϕ⧇ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ Trading Terminal, Broker āĻāĻŦāĻ‚ Execution Environment-āĻāϰ āϏāĻ™ā§āϗ⧇ āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻžāĨ¤ Python-āĻ āϤ⧈āϰāĻŋ Machine Learning Model, Statistical Arbitrage Engine, Portfolio Optimizer āĻ•āĻŋāĻ‚āĻŦāĻž Risk Management Pipeline āϝāĻĻāĻŋ āĻŦāĻžāĻ¸ā§āϤāĻŦ Broker Infrastructure-āĻāϰ āϏāĻ™ā§āϗ⧇ āĻ•āĻžāĻ°ā§āϝāĻ•āϰāĻ­āĻžāĻŦ⧇ āϝ⧋āĻ—āĻžāϝ⧋āĻ— āĻ•āϰāϤ⧇ āύāĻž āĻĒāĻžāϰ⧇, āϤāĻžāĻšāϞ⧇ Research Environment āĻāĻŦāĻ‚ Live Execution Environment-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āĻŦ⧜ Operational Gap āϤ⧈āϰāĻŋ āĻšā§ŸāĨ¤

āĻāχ āϏāĻŽāĻ¸ā§āϝāĻžāϰ āϏāĻŽāĻžāϧāĻžāύ⧇āϰ āϞāĻ•ā§āĻˇā§āϝ āύāĻŋā§Ÿā§‡āχ āφāϞ⧋āϚāύāĻžā§Ÿ āĻāϏ⧇āϛ⧇ TradeMux—āĻāĻ•āϟāĻŋ Integration Bridge, āϝāĻž Python-Based Quantitative Pipeline āĻāĻŦāĻ‚ MetaTrader Trading Environment-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ Normalized Communication Layer āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤

āϧāϰ⧁āύ, āφāĻĒāύāĻžāϰ āĻāĻ•āϟāĻŋ Institutional-Style Python Research Pipeline āĻ°ā§Ÿā§‡āϛ⧇āĨ¤ āϏ⧇āĻ–āĻžāύ⧇ pandas āĻ“ NumPy āĻĻāĻŋā§Ÿā§‡ Market Data Processing āĻšāĻšā§āϛ⧇, CatBoost āĻĻāĻŋā§Ÿā§‡ Trading Signal āϤ⧈āϰāĻŋ āĻšāĻšā§āϛ⧇, L1 Trend Filter āĻĻāĻŋā§Ÿā§‡ Noise Reduction āĻ•āϰāĻž āĻšāĻšā§āϛ⧇ āĻāĻŦāĻ‚ VaR-Based Portfolio Allocation āĻĻāĻŋā§Ÿā§‡ Position Sizing āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇āĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āφāĻĒāύāĻžāϰ Execution Environment āĻ°ā§Ÿā§‡āϛ⧇ MetaTrader 5-āĻāĨ¤ āφāĻŦāĻžāϰ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ Broker-āĻāϰ Symbol Naming, Lot Increment, Execution Mode āĻāĻŦāĻ‚ Account Configuration āĻāϕ⧇ āĻ…āĻĒāϰ⧇āϰ āĻĨ⧇āϕ⧇ āφāϞāĻžāĻĻāĻžāĨ¤

āĻāĻ–āύ āĻĒā§āϰāϤāĻŋāϟāĻŋ Broker-āĻāϰ āϜāĻ¨ā§āϝ āφāϞāĻžāĻĻāĻž Trading Logic āϞāĻŋāĻ–āϤ⧇ āĻšāϞ⧇ āφāĻĒāύāĻžāϰ Development Time, Maintenance Cost āĻāĻŦāĻ‚ Operational Complexity—āϏāĻŦāχ āĻŦā§‡ā§œā§‡ āϝāĻžāĻŦ⧇āĨ¤

TradeMux-āĻāϰ āĻŽā§‚āϞ āϧāĻžāϰāĻŖāĻž āĻšāϞ⧋:

Python āϏāĻŋāĻĻā§āϧāĻžāĻ¨ā§āϤ āύ⧇āĻŦ⧇, TradeMux āϏ⧇āχ āϏāĻŋāĻĻā§āϧāĻžāĻ¨ā§āϤāϕ⧇ Execution Environment-āĻ āĻĒ⧌āρāϛ⧇ āĻĻ⧇āĻŦ⧇, āφāϰ MetaTrader āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ Broker-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ Order Processing āĻ•āϰāĻŦ⧇āĨ¤

āĻāĻ–āĻžāύ⧇ Trading Strategy-āϕ⧇ Terminal-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻĒ⧁āύāϰāĻžā§Ÿ āϞāĻŋāĻ–āϤ⧇ āĻšā§Ÿ āύāĻžāĨ¤ Research, Machine Learning, Feature Engineering āĻāĻŦāĻ‚ Risk Calculation Python-āĻ āϰāĻžāĻ–āĻž āϝāĻžā§ŸāĨ¤ MetaTrader āϤāĻžāϰ Native Trading Environment āĻšāĻŋāϏ⧇āĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇āĨ¤

āĻāχ Architecture āĻŦāĻŋāĻļ⧇āώāĻ­āĻžāĻŦ⧇ āφāĻ•āĻ°ā§āώāĻŖā§€ā§Ÿ Quant Developer, Algorithmic Trader, Python Engineer, Financial Data Scientist āĻāĻŦāĻ‚ Multi-Broker Trading Infrastructure āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āφāĻ—ā§āϰāĻšā§€ Development Team-āĻāϰ āϜāĻ¨ā§āϝāĨ¤


ā§§. TradeMux āφāϏāϞ⧇ āϕ⧀ āĻāĻŦāĻ‚ āϕ⧇āύ āĻāϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ?

TradeMux-āϕ⧇ āϏāĻšāϜāĻ­āĻžāĻŦ⧇ āĻāĻ•āϟāĻŋ Python-to-Trading-Terminal Bridge āĻŦāϞāĻž āϝāĻžā§ŸāĨ¤

āĻāϟāĻŋ Python Application āĻāĻŦāĻ‚ MetaTrader Terminal-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āϝ⧋āĻ—āĻžāϝ⧋āϗ⧇āϰ āĻāĻ•āϟāĻŋ Standardized Interface āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āωāĻĻā§āĻĻ⧇āĻļā§āϝ⧇ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāϤ āĻšā§Ÿā§‡āϛ⧇āĨ¤ Python SDK āĻĨ⧇āϕ⧇ āĻĒāĻžāĻ āĻžāύ⧋ Command TradeMux-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ MetaTrader Environment-āĻ āĻĒ⧌āρāĻ›āĻžā§ŸāĨ¤ Terminal-āĻāϰ TradeMux Expert Advisor āĻŦāĻž EA āϏ⧇āχ Command āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇ MetaTrader-āĻāϰ Native Trading Functions āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•āĻžāϜāϟāĻŋ āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻ•āϰ⧇āĨ¤

āĻāĻ–āĻžāύ⧇ āϤāĻŋāύāϟāĻŋ āĻĒā§āϰāϧāĻžāύ āĻ…āĻ‚āĻļ āĻ°ā§Ÿā§‡āϛ⧇:

āĻāϟāĻŋ Python āĻŦāĻž MetaTrader-āĻāϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āύ⧟āĨ¤ āĻŦāϰāĻ‚ āĻĻ⧁āχ Environment-āĻāϰ āφāϞāĻžāĻĻāĻž āĻĻāĻžā§ŸāĻŋāĻ¤ā§āĻŦ āĻŦāϜāĻžā§Ÿ āϰ⧇āϖ⧇ āϤāĻžāĻĻ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ Integration āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤

āϕ⧇āύ Quant Developer-āĻĻ⧇āϰ āϜāĻ¨ā§āϝ āĻāϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ?

āĻāĻ•āϟāĻŋ Professional Quantitative Trading System-āĻ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻ•ā§Ÿā§‡āĻ•āϟāĻŋ āφāϞāĻžāĻĻāĻž āĻ•āĻžāϜ āĻĨāĻžāϕ⧇:

  1. Market Data Collection

  2. Data Cleaning āĻ“ Preprocessing

  3. Feature Engineering

  4. Statistical Modeling

  5. Machine Learning Prediction

  6. Strategy Backtesting

  7. Portfolio Optimization

  8. Risk Management

  9. Order Execution

  10. Position Monitoring

āĻāχ āĻ•āĻžāϜāϗ⧁āϞ⧋āϰ āϏāĻŦāĻ•āĻŋāϛ⧁ āĻāĻ•āχ Programming Language āĻŦāĻž Platform-āĻ āĻ•āϰāĻž āĻŦāĻžāĻ§ā§āϝāϤāĻžāĻŽā§‚āϞāĻ• āύ⧟āĨ¤

Python Research āĻāĻŦāĻ‚ Modeling-āĻāϰ āϜāĻ¨ā§āϝ āĻ…āĻ¤ā§āϝāĻ¨ā§āϤ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀āĨ¤ āĻ…āĻ¨ā§āϝāĻĻāĻŋāϕ⧇ MetaTrader 5 Broker Connectivity āĻ“ Trading Execution-āĻāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻĒāϰāĻŋāϚāĻŋāϤ EnvironmentāĨ¤

TradeMux āĻāχ āĻĻ⧁āχ āĻĒāϰāĻŋāĻŦ⧇āĻļāϕ⧇ āĻāĻ•āϏāĻ™ā§āϗ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻāĻ•āϟāĻŋ āĻĒāĻĨ āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤

⧍. Python āĻŦāύāĻžāĻŽ MetaTrader 5: āϕ⧋āύ Environment āϕ⧀ āĻ•āĻžāϜ āĻ•āϰāĻŦ⧇?

TradeMux Architecture-āĻāϰ āϏāĻŦāĻšā§‡ā§Ÿā§‡ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻŦāĻŋāώ⧟ āĻšāϞ⧋ Responsibility SeparationāĨ¤

Python: Research, Intelligence āĻāĻŦāĻ‚ Decision Making

Python Environment-āĻ āϰāĻžāĻ–āĻž āϝāĻžā§Ÿ:

āĻ…āĻ°ā§āĻĨāĻžā§Ž Python āĻšāĻšā§āϛ⧇ Quant System-āĻāϰ Intelligence LayerāĨ¤

MetaTrader 5: Broker Connectivity āĻāĻŦāĻ‚ Execution

MetaTrader 5 Environment-āĻāϰ āĻĻāĻžā§ŸāĻŋāĻ¤ā§āĻŦ:

āĻāĻ–āĻžāύ⧇ Strategy-āĻāϰ āĻŽā§‚āϞ Machine Learning Logic āĻĒ⧁āύāϰāĻžā§Ÿ āϞāĻŋāĻ–āϤ⧇ āĻšā§Ÿ āύāĻžāĨ¤

TradeMux: āĻĻ⧁āχ Environment-āĻāϰ āĻŽāĻ§ā§āϝ⧇ Integration

TradeMux-āĻāϰ āĻĻāĻžā§ŸāĻŋāĻ¤ā§āĻŦ āĻšāϞ⧋ Python Application āĻĨ⧇āϕ⧇ āĻĒāĻžāĻ āĻžāύ⧋ Request āĻāĻŦāĻ‚ MetaTrader Terminal-āĻāϰ āĻŽāĻ§ā§āϝ⧇ Communication āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāĨ¤

āĻāϰ āĻĢāϞ⧇ āĻāĻ•āϟāĻŋ āĻĒāϰāĻŋāĻˇā§āĻ•āĻžāϰ Separation āϤ⧈āϰāĻŋ āĻšā§Ÿ:

Component Primary Responsibility Python Research Engine Data, Features, Models, Signals Python Execution Service Risk Checks, Position Logic, Scheduling TradeMux SDK/API Communication āĻ“ Normalization MetaTrader 5 + TradeMux EA Native Trading Execution Broker Account āĻ“ Market Execution Environment

āĻāχ āϧāϰāύ⧇āϰ Architecture āĻŦ⧜ Quantitative System-āĻāϰ āϜāĻ¨ā§āϝ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ, āĻ•āĻžāϰāĻŖ āĻāϤ⧇ Research Code āĻāĻŦāĻ‚ Execution Code-āĻāϰ āĻĻāĻžā§ŸāĻŋāĻ¤ā§āĻŦ āφāϞāĻžāĻĻāĻž āϰāĻžāĻ–āĻž āϝāĻžā§ŸāĨ¤

ā§Š. TradeMux-āĻāϰ Four-Layer Architecture

TradeMux-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• Architecture-āϕ⧇ āϚāĻžāϰāϟāĻŋ āĻĒā§āϰāϧāĻžāύ Layer-āĻ āĻ­āĻžāĻ— āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

Layer 1: Research & Signal Engine

āĻāϟāĻŋ āĻĒ⧁āϰ⧋ Quant System-āĻāϰ Research CenterāĨ¤

āĻāĻ–āĻžāύ⧇ Jupyter Notebook, Python Script āĻāĻŦāĻ‚ Machine Learning Pipeline āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ Market Data āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻ•āϰāĻž āĻšā§ŸāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖ:

āωāĻ˛ā§āϞ⧇āĻ–āĻŋāϤ āϏāĻ‚āĻ–ā§āϝāĻžāϗ⧁āϞ⧋ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ Research Workflow-āĻāϰ āωāĻĻāĻžāĻšāϰāĻŖ; āĻāϗ⧁āϞ⧋ TradeMux-āĻāϰ āĻ¸ā§āĻŦāĻžāϧ⧀āύāĻ­āĻžāĻŦ⧇ āϝāĻžāϚāĻžāχāĻ•ā§ƒāϤ Performance Benchmark āύ⧟āĨ¤

āĻāχ Layer-āĻāϰ Output āĻšāϤ⧇ āĻĒāĻžāϰ⧇:

{symbol: direction, lot, confidence}

āϝ⧇āĻŽāύ, āĻāĻ•āϟāĻŋ Research Engine EURUSD-āĻāϰ āϜāĻ¨ā§āϝ BUY, GBPUSD-āĻāϰ āϜāĻ¨ā§āϝ HOLD āĻāĻŦāĻ‚ XAUUSD-āĻāϰ āϜāĻ¨ā§āϝ SELL Signal āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āĻāϗ⧁āϞ⧋ āϕ⧇āĻŦāϞ Signal DataāĨ¤ Risk Validation āĻ›āĻžā§œāĻž āϏāϰāĻžāϏāϰāĻŋ Execution āĻ•āϰāĻž āωāϚāĻŋāϤ āύ⧟āĨ¤

Layer 2: Python Execution Service

āĻāχ Layer Research Engine āĻĨ⧇āϕ⧇ Signal āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇ āĻāĻŦāĻ‚ Execution-āĻāϰ āφāϗ⧇ āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§Ÿ Risk Check āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻ•āϰ⧇āĨ¤

āĻāĻ–āĻžāύ⧇ āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰ⧇:

āĻāĻ–āĻžāύ⧇ āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Design Principle āĻšāĻ˛ā§‹â€”Machine Learning Model āϕ⧋āύ⧋ Signal āϤ⧈āϰāĻŋ āĻ•āϰāϞ⧇āχ āϏ⧇āϟāĻŋ āĻ¸ā§āĻŦ⧟āĻ‚āĻ•ā§āϰāĻŋ⧟āĻ­āĻžāĻŦ⧇ Execute āĻšāĻŦ⧇ āύāĻžāĨ¤ āĻĒā§āϰāĻĨāĻŽā§‡ Risk Engine-āϕ⧇ āϏ⧇āϟāĻŋ āϝāĻžāϚāĻžāχ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

Layer 3: TradeMux SDK/API Bridge

āĻāχ Layer Python SDK āĻāĻŦāĻ‚ MetaTrader Terminal-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āϝ⧋āĻ—āĻžāϝ⧋āĻ— āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰ⧇āĨ¤

āĻāĻ–āĻžāύ⧇ Broker-Specific Configuration Normalization-āĻāϰ āϧāĻžāϰāĻŖāĻžāϟāĻŋ āĻŦāĻŋāĻļ⧇āώāĻ­āĻžāĻŦ⧇ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤

āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ Broker-āĻ āĻāĻ•āχ Instrument-āĻāϰ Symbol āφāϞāĻžāĻĻāĻž āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ:

āĻāĻ•āχāĻ­āĻžāĻŦ⧇ Lot Increment āĻ“ Execution Configuration-āĻ“ āĻ­āĻŋāĻ¨ā§āύ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

TradeMux-āĻāϰ āĻŦāĻ°ā§āĻŖāĻŋāϤ āϞāĻ•ā§āĻˇā§āϝ āĻšāϞ⧋ Python Application-āϕ⧇ āĻāĻ•āϟāĻŋ Normalized Interface āĻĻ⧇āĻ“ā§ŸāĻž, āϝāĻžāϤ⧇ Broker-Specific Details-āĻāϰ āĻ•āĻžāϰāϪ⧇ Research Logic āĻŦāĻžāϰāĻŦāĻžāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāϤ⧇ āύāĻž āĻšā§ŸāĨ¤

Layer 4: MetaTrader Terminal + TradeMux EA

MetaTrader 5 Terminal-āĻ TradeMux EA āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻĨāĻžāϕ⧇āĨ¤

EA-āĻāϰ āĻ•āĻžāϜ āĻšāϞ⧋ Bridge āĻĨ⧇āϕ⧇ Command āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇ MetaTrader-āĻāϰ Native Trading Functions āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāĨ¤

āĻĒā§āϰāĻ•āĻžāĻļāĻŋāϤ Architecture āĻ…āύ⧁āϝāĻžā§Ÿā§€, Communication-āĻāϰ āϜāĻ¨ā§āϝ MetaTrader WebRequest Loop āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿ āĻāĻŦāĻ‚ Third-Party DLL Dependency āĻ›āĻžā§œāĻžāχ EA āĻĒāϰāĻŋāϚāĻžāϞāύāĻžāϰ Design āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻāĻ–āĻžāύ⧇ Python-āĻāϰ Strategy Logic Terminal-āĻ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤāϰāĻŋāϤ āĻšā§Ÿ āύāĻžāĨ¤

Architecture-āĻāϰ āϏāĻžāϰāĻ•āĻĨāĻž: Python Calculates → TradeMux Transmits → MetaTrader Executes → Broker Processes.

ā§Ē. TradeMux-āĻāϰ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Features āĻ“ Practical Benefits

4.1 Normalized Account Information

āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ Broker-āĻāϰ Account Information āφāϞāĻžāĻĻāĻž Format-āĻ āĻĒāĻžāĻ“ā§ŸāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ TradeMux SDK-āĻāϰ get_account_info() Method āĻāĻ•āϟāĻŋ Normalized Structure āĻĢ⧇āϰāϤ āĻĻ⧇āĻ“ā§ŸāĻžāϰ āϜāĻ¨ā§āϝ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāϤ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāĻž Field:

āĻāϰ āĻĢāϞ⧇ Python-āĻāϰ Risk Dashboard āĻŦāĻž Monitoring Service āĻāĻ•āχ āϧāϰāύ⧇āϰ Data Structure āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•āĻžāϜ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

4.2 Unified Position Monitoring

list_positions() Method-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ Open Position āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϤāĻĨā§āϝ āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžā§ŸāĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ Position Structure-āĻāϰ Field:

āĻāϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ, āĻ•āĻžāϰāĻŖ āĻāĻ•āϟāĻŋ Portfolio Monitoring System-āĻāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāϤāĻŋāϟāĻŋ Broker-āĻāϰ āφāϞāĻžāĻĻāĻž Position Parser āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ āĻ•āĻŽā§‡ āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

4.3 Historical OHLC Data Retrieval

get_ohlc() Method-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ MetaTrader Environment āĻĨ⧇āϕ⧇ Historical OHLC Data Python Process-āĻ āφāύāĻž āϝāĻžā§ŸāĨ¤

āĻāĻ–āĻžāύ⧇ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Parameter:

āωāĻĻāĻžāĻšāϰāĻŖ āĻšāĻŋāϏ⧇āĻŦ⧇ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ "1h" Timeframe Format āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤ āϏ⧇āĻ–āĻžāύ⧇ "H1" Format-āϕ⧇ Server-Side Validation-āĻ Rejected āĻŦāϞāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

as_df=True āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϞ⧇ DataFrame āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžā§Ÿ, āϝāĻž āϏāϰāĻžāϏāϰāĻŋ pandas-Based Research Pipeline-āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

4.4 Market Order Interface

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ Market Order-āĻāϰ āϜāĻ¨ā§āϝ āĻĻ⧁āϟāĻŋ SDK Method āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇:

āĻāϗ⧁āϞ⧋ Python Application āĻĨ⧇āϕ⧇ Trading Command āĻĒāĻžāĻ āĻžāύ⧋āϰ Interface āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšā§ŸāĨ¤

4.5 Emergency Kill Switch

kill_switch() āĻšāϞ⧋ āφāϞ⧋āϚāĻŋāϤ Architecture-āĻāϰ āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Safety FeatureāĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ āĻ…āύ⧁āϝāĻžā§Ÿā§€, āĻāϟāĻŋ āĻāĻ•āϟāĻŋ Command-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ Open Positions āĻŦāĻ¨ā§āϧ āĻ•āϰāĻž āĻāĻŦāĻ‚ Pending Orders āĻŽā§āϛ⧇ āĻĢ⧇āϞāĻžāϰ Emergency Workflow āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Safety Mechanism āĻšāϞ⧇āĻ“ āĻāϕ⧇ āĻāĻ•āĻŽāĻžāĻ¤ā§āϰ Risk Protection āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āωāϚāĻŋāϤ āύ⧟āĨ¤ API, Network, Terminal āĻŦāĻž Broker Connectivity āĻŦā§āϝāĻ°ā§āĻĨ āĻšāϞ⧇ Emergency Command-āĻ“ āĻŦā§āϝāĻ°ā§āĻĨ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

4.6 Multi-Account Architecture

āĻĒā§āϰāϤāĻŋāϟāĻŋ Account-āĻāϰ āϜāĻ¨ā§āϝ āφāϞāĻžāĻĻāĻž API Key āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϧāĻžāϰāĻŖāĻž āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻāĻ•āϟāĻŋ Python Service āĻāĻ•āĻžāϧāĻŋāĻ• MTClient Instance āϤ⧈āϰāĻŋ āĻ•āϰ⧇ āĻĒ⧃āĻĨāĻ• Account-āĻāϰ āϏāĻ™ā§āϗ⧇ āĻ•āĻžāϜ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

4.7 OANDA Integration

MetaTrader Account-āĻāϰ āϜāĻ¨ā§āϝ MTClient āĻāĻŦāĻ‚ OANDA-āĻāϰ āϜāĻ¨ā§āϝ āĻĒ⧃āĻĨāĻ• OandaClient Class-āĻāϰ āĻ•āĻĨāĻž āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻāĻ–āĻžāύ⧇ Call Pattern āĻāĻ•āχ āϧāϰāύ⧇āϰ āĻšāϞ⧇āĻ“ Client Class āĻāĻŦāĻ‚ Authentication Configuration āφāϞāĻžāĻĻāĻžāĨ¤

4.8 Zero-DLL Architecture

TradeMux EA-āĻāϰ āĻŦāĻ°ā§āĻŖāĻŋāϤ Design-āĻ Third-Party DLL Dependency āĻ›āĻžā§œāĻžāχ MetaTrader WebRequest Communication āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

VPS Deployment āĻāĻŦāĻ‚ Terminal Security-āĻāϰ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝ Architectural ChoiceāĨ¤


ā§Ģ. Development Environment āĻ“ Prerequisites

TradeMux-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• Python Execution Architecture āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āφāϗ⧇ āύāĻŋāĻšā§‡āϰ āĻŦāĻŋāώ⧟āϗ⧁āϞ⧋ āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ āϰāĻžāĻ–āĻž āĻĒā§āĻ°ā§Ÿā§‹āϜāύāĨ¤

Requirement Purpose Python 3 Research āĻ“ Execution Service MetaTrader 5 Terminal Broker Connectivity āĻ“ Execution TradeMux EA Terminal-Side Bridge TradeMux API Key Python Client Authentication TradeMux SDK Python āĻĨ⧇āϕ⧇ Bridge Communication pandas Time-Series Data Processing NumPy Numerical Computation CatBoost Machine Learning Signal Model joblib Model Loading Logging Monitoring āĻ“ Troubleshooting

āĻāĻ–āĻžāύ⧇ āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āĻŽāύ⧇ āϰāĻžāĻ–āϤ⧇ āĻšāĻŦ⧇: āωāĻĒāϰ⧇āϰ Python Libraries-āϗ⧁āϞ⧋āϰ āϏāĻŦāϗ⧁āϞ⧋ TradeMux SDK-āĻāϰ āĻŦāĻžāĻ§ā§āϝāϤāĻžāĻŽā§‚āϞāĻ• Dependency āύ⧟āĨ¤ āĻāϗ⧁āϞ⧋ āφāϞ⧋āϚāĻŋāϤ Quant Research āĻ“ Execution Pipeline-āĻāϰ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻ…āĻ‚āĻļ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšā§ŸāĨ¤

TradeMux SDK-āĻāϰ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ Package Name, Installation Command, Server URL āĻāĻŦāĻ‚ Account Setup-āĻāϰ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāύāĻž āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āϏāĻ°ā§āĻŦāĻ¤ā§āϰ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤāĻ­āĻžāĻŦ⧇ āĻĻ⧇āĻ“ā§ŸāĻž āĻšā§ŸāύāĻŋāĨ¤ āϤāĻžāχ āϝāĻžāϚāĻžāχ āĻ›āĻžā§œāĻž āϕ⧋āύ⧋ pip install Package Name āĻŦāĻž API Endpoint āϧāϰ⧇ āύ⧇āĻ“ā§ŸāĻž āĻ āĻŋāĻ• āĻšāĻŦ⧇ āύāĻžāĨ¤

ā§Ŧ. Step-by-Step Setup Tutorial

āĻāχ āĻ…āĻ‚āĻļ⧇ āĻāĻ•āϟāĻŋ Demo-First Integration Workflow āϤ⧁āϞ⧇ āϧāϰāĻž āĻšāϞ⧋āĨ¤

Step 1: MetaTrader 5 Install āĻ•āϰ⧁āύ

āĻĒā§āϰāĻĨāĻŽā§‡ āφāĻĒāύāĻžāϰ Broker-āĻāϰ āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ MetaTrader 5 Installation Package āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ Terminal Install āĻ•āϰ⧁āύāĨ¤

āϤāĻžāϰāĻĒāϰ:

  1. MetaTrader 5 āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤

  2. Demo Trading Account āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύāĨ¤

  3. Broker Server-āĻāϰ āϏāĻ™ā§āϗ⧇ Login āĻ•āϰ⧁āύāĨ¤

  4. Market Watch-āĻ āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§Ÿ Symbol āĻĻ⧇āĻ–āĻž āϝāĻžāĻšā§āϛ⧇ āĻ•āĻŋ āύāĻž āϝāĻžāϚāĻžāχ āĻ•āϰ⧁āύāĨ¤

  5. Terminal-āĻāϰ Connection Status āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύāĨ¤

āĻĒā§āϰāĻĨāĻŽ āĻĒāĻ°ā§āϝāĻžā§Ÿā§‡ Live Account āĻŦā§āϝāĻŦāĻšāĻžāϰ āύāĻž āĻ•āϰāĻžāχ āωāĻ¤ā§āϤāĻŽāĨ¤

Step 2: TradeMux EA āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰ⧁āύ

āĻĒā§āϰāĻ•āĻžāĻļāĻŋāϤ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ TradeMux EA Marketplace āĻ…āĻĨāĻŦāĻž Official Website āĻĨ⧇āϕ⧇ Download āĻ•āϰāĻžāϰ āĻ•āĻĨāĻž āĻŦāϞāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

EA Install āĻ•āϰāĻžāϰ āĻĒāϰ MetaTrader-āĻāϰ Navigator Panel-āĻ āĻāϟāĻŋ āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžāĻšā§āϛ⧇ āĻ•āĻŋ āύāĻž āϝāĻžāϚāĻžāχ āĻ•āϰ⧁āύāĨ¤

EA-āĻāϰ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ Download URL āĻāĻŦāĻ‚ Marketplace Listing āĻāĻ–āĻžāύ⧇ āφāϞāĻžāĻĻāĻžāĻ­āĻžāĻŦ⧇ āϝāĻžāϚāĻžāχ āĻ•āϰāĻž āĻšā§ŸāύāĻŋāĨ¤ āϤāĻžāχ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ Official Distribution Source āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤

Step 3: MetaTrader WebRequest Configure āĻ•āϰ⧁āύ

MetaTrader 5-āĻ:

  1. Tools Menu āϖ⧁āϞ⧁āύāĨ¤

  2. Options āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤

  3. Expert Advisors Tab-āĻ āϝāĻžāύāĨ¤

  4. Allow WebRequest for listed URL Enable āĻ•āϰ⧁āύāĨ¤

  5. TradeMux-āĻāϰ Official Documentation-āĻ āĻĻ⧇āĻ“ā§ŸāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ API Domain āϝ⧁āĻ•ā§āϤ āĻ•āϰ⧁āύāĨ¤

āϕ⧋āύ⧋ āĻ…āϜāĻžāύāĻž āĻŦāĻž āĻ…āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ Domain āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻ⧇āĻŦ⧇āύ āύāĻžāĨ¤

WebRequest Permission āĻĻ⧇āĻ“ā§ŸāĻžāϰ āφāϗ⧇ Domain-āĻāϰ Authenticity āϝāĻžāϚāĻžāχ āĻ•āϰāĻž āϜāϰ⧁āϰāĻŋāĨ¤

Step 4: TradeMux EA Chart-āĻ Attach āĻ•āϰ⧁āύ

  1. Navigator Panel āĻĨ⧇āϕ⧇ TradeMux EA āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤

  2. āĻāĻ•āϟāĻŋ āωāĻĒāϝ⧁āĻ•ā§āϤ Chart āϖ⧁āϞ⧁āύāĨ¤

  3. EA-āϟāĻŋ Chart-āĻ Attach āĻ•āϰ⧁āύāĨ¤

  4. Input Parameters-āĻ āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§Ÿ API Key āĻĻāĻŋāύāĨ¤

  5. Terminal-āĻāϰ Journal āĻāĻŦāĻ‚ Experts Tab āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύāĨ¤

EA āϏāĻĢāϞāĻ­āĻžāĻŦ⧇ Initialize āĻšā§Ÿā§‡āϛ⧇ āĻ•āĻŋ āύāĻž āύāĻŋāĻļā§āϚāĻŋāϤ āύāĻž āĻšā§Ÿā§‡ Python Execution Service āϚāĻžāϞ⧁ āĻ•āϰāĻŦ⧇āύ āύāĻžāĨ¤

Step 5: API Key āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύ

āύāĻŋāĻŦāĻ¨ā§āϧ āĻ…āύ⧁āϝāĻžā§Ÿā§€, āĻāĻ•āϟāĻŋ API Key āĻāĻ•āϟāĻŋ Account-āĻāϰ āϏāĻ™ā§āϗ⧇ āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤāĨ¤

āĻāĻ•āĻžāϧāĻŋāĻ• Account āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻšāϞ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ Account-āĻāϰ āϜāĻ¨ā§āϝ āĻĒ⧃āĻĨāĻ• Key āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

API Key āϏāĻ‚āϰāĻ•ā§āώāϪ⧇āϰ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇:

Step 6: Python Environment āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ āĻ•āϰ⧁āύ

āύāĻŋāĻœā§‡āϰ Python Project-āĻāϰ āϜāĻ¨ā§āϝ Virtual Environment āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

python -m venv .venv

Linux/macOS:

source .venv/bin/activate

Windows PowerShell:

.venv\Scripts\Activate.ps1

Research Pipeline-āĻāϰ āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§Ÿ Library Install āĻ•āϰ⧁āύāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖ:

pip install pandas numpy catboost joblib

āĻāχ Command-āϟāĻŋ Research Example-āĻāϰ Library Setup-āĻāϰ āϜāĻ¨ā§āϝāĨ¤ āĻāϟāĻŋ TradeMux SDK Install āĻ•āϰ⧇ āύāĻžāĨ¤ SDK-āĻāϰ āĻĒā§āϰāĻ•ā§ƒāϤ Package Name āĻ“ Installation Instruction TradeMux-āĻāϰ Official Documentation āĻĨ⧇āϕ⧇ āύāĻŋāϤ⧇ āĻšāĻŦ⧇āĨ¤


ā§­. Python āĻĨ⧇āϕ⧇ TradeMux Client Initialize āĻ•āϰāĻž

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ MTClient āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ TradeMux SDK Initialize āĻ•āϰāĻžāϰ āωāĻĻāĻžāĻšāϰāĻŖ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻāĻ•āϟāĻŋ Client āϤ⧈āϰāĻŋāϰ āϜāĻ¨ā§āϝ āĻŽā§‚āϞāϤ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ:

āωāĻĻāĻžāĻšāϰāĻŖ:

from trademux import MTClient

client = MTClient(
    api_key="YOUR_DEMO_API_KEY",
    server_url="YOUR_DOCUMENTED_SERVER_URL",
    timeout=30
)

āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ: trademux Import Path āĻāĻŦāĻ‚ āωāĻĒāϰ⧇āϰ Configuration āĻāĻ•āϟāĻŋ Conceptual IllustrationāĨ¤ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ SDK-āĻāϰ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ Package Installation āĻ“ Import Specification āĻĻ⧇āĻ“ā§ŸāĻž āύ⧇āχāĨ¤ āĻŦāĻžāĻ¸ā§āϤāĻŦ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āφāϗ⧇ Official SDK Documentation āĻ…āύ⧁āϝāĻžā§Ÿā§€ Import Path, Server URL āĻāĻŦāĻ‚ Constructor Signature āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

āϕ⧋āύ⧋ Credential āϏāϰāĻžāϏāϰāĻŋ Code-āĻ āϰāĻžāĻ–āĻžāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ Environment Variable āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻ­āĻžāϞ⧋:

import os

API_KEY = os.environ["TRADEMUX_API_KEY"]
SERVER_URL = os.environ["TRADEMUX_SERVER_URL"]

āĻāĻ­āĻžāĻŦ⧇ Secret Management āφāϰāĻ“ āύāĻŋāϰāĻžāĻĒāĻĻ āĻšā§ŸāĨ¤

ā§Ž. Account Information āϏāĻ‚āĻ—ā§āϰāĻš

Client Initialize āĻšāĻ“ā§ŸāĻžāϰ āĻĒāϰ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ āĻĒā§āϰāϧāĻžāύ Account Method āĻšāϞ⧋:

account = client.get_account_info()

āĻāϟāĻŋ Account Snapshot-āĻāϰ āĻŽāϤ⧋ āĻāĻ•āϟāĻŋ Structure āĻĢ⧇āϰāϤ āĻĻā§‡ā§ŸāĨ¤

āϏāĻžāϧāĻžāϰāĻŖ Monitoring Application-āĻ āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§Ÿ āϤāĻĨā§āϝ:

def display_account_summary(account):
    print("Balance:", account.get("balance"))
    print("Equity:", account.get("equity"))
    print("Floating PnL:", account.get("floating_pnl"))
    print("Open Positions:", account.get("open_positions"))
    print("Pending Orders:", account.get("pending_orders"))
    print("Account:", account.get("account_number"))
    print("Server:", account.get("server"))

āĻāĻ–āĻžāύ⧇ .get() āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āĻĢāϞ⧇ āϕ⧋āύ⧋ Optional Field āĻ…āύ⧁āĻĒāĻ¸ā§āĻĨāĻŋāϤ āĻĨāĻžāĻ•āϞ⧇ āϏāĻžāϧāĻžāϰāĻŖ Dictionary Access-āĻāϰ āĻŽāϤ⧋ KeyError āĻšāĻ“ā§ŸāĻžāϰ āĻā§āρāĻ•āĻŋ āĻ•āĻŽā§‡āĨ¤

āϤāĻŦ⧇ Production Application-āĻ āĻĒā§āϰāϤāĻŋāϟāĻŋ Field-āĻāϰ Data Type, Timestamp āĻāĻŦāĻ‚ Update Frequency āϝāĻžāϚāĻžāχ āĻ•āϰāĻž āωāϚāĻŋāϤāĨ¤

⧝. Open Position Data āϏāĻ‚āĻ—ā§āϰāĻš

Position Monitoring-āĻāϰ āϜāĻ¨ā§āϝ:

positions = client.list_positions()

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ Return Structure-āĻāϰ āωāĻĻāĻžāĻšāϰāĻŖ:

{
    "positions": [
        {
            "ticket": 123456,
            "symbol": "EURUSD",
            "type": "BUY",
            "volume": 0.10,
            "open_price": 1.10000,
            "profit": 5.50
        }
    ],
    "total_count": 1
}

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ Illustrative Data Structure; āĻāϟāĻŋ āϕ⧋āύ⧋ Live Account-āĻāϰ Actual Response āύ⧟āĨ¤

Position Data āĻĻāĻŋā§Ÿā§‡ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āϝāĻžā§Ÿ:

ā§§ā§Ļ. Market Data Python DataFrame-āĻ āφāύāĻž

Quant Research Pipeline-āĻāϰ āϜāĻ¨ā§āϝ Historical OHLC Data āϖ⧁āĻŦāχ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤

TradeMux-āĻāϰ get_ohlc() Method āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ Data āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ Example:

import pandas as pd

def fetch_ohlc_dataframe(
    client,
    symbol,
    timeframe="1h",
    count=200
):
    df = client.get_ohlc(
        symbol=symbol,
        timeframe=timeframe,
        count=count,
        as_df=True
    )

    df["time"] = pd.to_datetime(
        df["time"],
        unit="s",
        utc=True
    )

    df.set_index("time", inplace=True)

    return df

āĻāĻ–āĻžāύ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ Parameter-āĻāϰ āĻ•āĻžāϜ:

Parameter Description client Initialized TradeMux Client symbol Market Instrument timeframe Candle Interval count āĻ•āϤāϗ⧁āϞ⧋ Bar āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰāĻž āĻšāĻŦ⧇ as_df DataFrame Format āĻĢ⧇āϰāϤ āĻĻ⧇āĻ“ā§ŸāĻžāϰ Option

DataFrame āĻĒāĻžāĻ“ā§ŸāĻžāϰ āĻĒāϰ āϕ⧀ āĻ•āϰāĻŦ⧇āύ?

āĻĒā§āϰāĻĨāĻŽā§‡ Data Quality āϝāĻžāϚāĻžāχ āĻ•āϰ⧁āύ:

df = fetch_ohlc_dataframe(
    client,
    symbol="EURUSD",
    timeframe="1h",
    count=200
)

print(df.head())
print(df.tail())
print(df.isna().sum())
print(df.dtypes)

Production Research Pipeline-āĻ āφāϰāĻ“ āϝāĻžāϚāĻžāχ āĻ•āϰāĻž āĻĒā§āĻ°ā§Ÿā§‹āϜāύ:

āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Quantitative Principle āĻšāĻ˛ā§‹â€”Historical Data-āϤ⧇ āĻ­āĻŦāĻŋāĻˇā§āϝāϤ⧇āϰ āϤāĻĨā§āϝ āϝ⧇āύ āϕ⧋āύ⧋āĻ­āĻžāĻŦ⧇ Feature āĻŦāĻž Signal Calculation-āĻ āĻĒā§āϰāĻŦ⧇āĻļ āύāĻž āĻ•āϰ⧇āĨ¤


ā§§ā§§. Python-Based Trading Signal Generation

TradeMux-āĻāϰ āĻāĻ•āϟāĻŋ āĻŦ⧜ āϏ⧁āĻŦāĻŋāϧāĻž āĻšāϞ⧋ Signal Generation Python-āĻ āϰāĻžāĻ–āĻž āϝāĻžā§ŸāĨ¤

āĻāĻ–āĻžāύ⧇ Strategy Engine āύāĻŋāĻœā§‡āϰ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ…āύ⧁āϝāĻžā§Ÿā§€ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦāĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ MACD āĻāĻŦāĻ‚ Trend Slope-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻāĻ•āϟāĻŋ Illustrative Signal Function āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

def compute_signal(df):
    close = df["close"]

    ema_fast = close.ewm(
        span=12,
        adjust=False
    ).mean()

    ema_slow = close.ewm(
        span=26,
        adjust=False
    ).mean()

    macd = ema_fast - ema_slow

    signal = macd.ewm(
        span=9,
        adjust=False
    ).mean()

    slope_20 = (
        close.iloc[-1] - close.iloc[-21]
    ) / close.iloc[-21]

    macd_val = macd.iloc[-1]
    sig_val = signal.iloc[-1]

    cross_up = (
        macd_val > sig_val
        and macd.iloc[-2] <= signal.iloc[-2]
    )

    cross_dn = (
        macd_val < sig_val
        and macd.iloc[-2] >= signal.iloc[-2]
    )

    if cross_up and slope_20 > 0:
        return "BUY"

    elif cross_dn and slope_20 < 0:
        return "SELL"

    return "HOLD"

āĻāχ Example-āĻāϰ āωāĻĻā§āĻĻ⧇āĻļā§āϝ āĻšāϞ⧋ āĻĻ⧇āĻ–āĻžāύ⧋ āϝ⧇ Signal Function-āĻāϰ Input āĻāĻ•āϟāĻŋ DataFrame āĻāĻŦāĻ‚ Output āĻāĻ•āϟāĻŋ Decision StringāĨ¤

Signal Function āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇?

EMA Fast: āϤ⧁āϞāύāĻžāĻŽā§‚āϞāĻ• āĻĻā§āϰ⧁āϤ Price Movement āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰ⧇āĨ¤

EMA Slow: āĻĻā§€āĻ°ā§āϘāϤāϰ Trend Direction āĻŦā§‹āĻāĻžāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰ⧇āĨ¤

MACD: Fast EMA āĻ“ Slow EMA-āĻāϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝāĨ¤

Signal Line: MACD-āĻāϰ Smoothed AverageāĨ¤

Trend Slope: āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ Lookback Period-āĻ Price Direction-āĻāϰ āĻāĻ•āϟāĻŋ āϏāϰāϞ āĻĒāϰāĻŋāĻŽāĻžāĻĒāĨ¤

āĻāĻ–āĻžāύ⧇ BUY āĻŦāĻž SELL Signal āĻĒāĻžāĻ“ā§ŸāĻž āĻŽāĻžāύ⧇āχ āϞāĻžāĻ­āϜāύāĻ• Trade āύ⧟āĨ¤ Transaction Cost, Spread, Slippage, Market Regime āĻāĻŦāĻ‚ Model Robustness āφāϞāĻžāĻĻāĻžāĻ­āĻžāĻŦ⧇ āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

āĻāχ MACD Example-āϕ⧇ Production-Ready Strategy āĻŦāĻž Financial Advice āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦāĻŋāĻŦ⧇āϚāύāĻž āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻžāĨ¤

⧧⧍. āĻāĻ•āĻžāϧāĻŋāĻ• Symbol-āĻāϰ Signal āϤ⧈āϰāĻŋ

āĻāĻ•āϟāĻŋ Research Engine āĻāĻ•āĻžāϧāĻŋāĻ• Instrument-āĻāϰ Data āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰ⧇ Signal āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ Workflow:

def generate_signals(client, symbols):
    signals = {}

    for symbol in symbols:
        try:
            df = fetch_ohlc_dataframe(
                client,
                symbol,
                timeframe="1h",
                count=200
            )

            signals[symbol] = compute_signal(df)

        except Exception as error:
            print(
                f"Signal error for {symbol}: {error}"
            )

            signals[symbol] = "HOLD"

    return signals

āĻāĻ–āĻžāύ⧇ āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Safety Decision āĻ°ā§Ÿā§‡āϛ⧇: Data Retrieval āĻŦāĻž Signal Calculation āĻŦā§āϝāĻ°ā§āĻĨ āĻšāϞ⧇ Example-āϟāĻŋ HOLD āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϛ⧇āĨ¤

Production System-āĻ āĻāχ Fail-Safe Design āφāϰāĻ“ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āϝ⧇āĻŽāύ:

āϕ⧋āύ⧋ Market Data āĻ…āύ⧁āĻĒāĻ¸ā§āĻĨāĻŋāϤ āĻĨāĻžāĻ•āϞ⧇ āĻĒ⧁āϰ⧋āύ⧋ Signal āĻĻāĻŋā§Ÿā§‡ āύāϤ⧁āύ Execution āĻ•āϰāĻžāϰ āĻā§āρāĻ•āĻŋ āĻā§œāĻžāϤ⧇ āĻšāĻŦ⧇āĨ¤


ā§§ā§Š. CatBoost Machine Learning Integration

Quantitative Trading-āĻāϰ āĻ…āĻ¨ā§āϝāϤāĻŽ āφāĻ•āĻ°ā§āώāĻŖā§€ā§Ÿ āĻ…āĻ‚āĻļ āĻšāϞ⧋ Machine Learning-Based Signal GenerationāĨ¤

TradeMux Architecture-āĻ CatBoost Model Python-āĻāϰ āĻŽāĻ§ā§āϝ⧇ Load āĻ•āϰ⧇ Prediction āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āωāĻĻāĻžāĻšāϰāĻŖ āĻĻ⧇āĻ“ā§ŸāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻāĻ–āĻžāύ⧇ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻŦāĻŋāώ⧟ āĻšāϞ⧋, TradeMux Model Train āĻ•āϰ⧇ āύāĻžāĨ¤ Model Training, Feature Engineering āĻāĻŦāĻ‚ Prediction Python Application-āĻāϰ āĻĻāĻžā§ŸāĻŋāĻ¤ā§āĻŦāĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻāĻ•āϟāĻŋ CatBoost Wrapper Class āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇:

from catboost import CatBoostClassifier, Pool
import joblib


class CatBoostSignalEngine:

    FEATURE_COLS = [
        "ret_1",
        "ret_3",
        "ret_5",
        "ret_10",
        "ret_20",
        "l1_slope",
        "l1_accel",
        "l1_trend_up",
        "l1_trend_chg",
        "deviation",
        "dev_pct",
        "vol_5",
        "vol_10",
        "vol_20",
        "rsi_l1_14",
        "rsi_close_14",
        "bb_pos_10",
        "bb_pos_20",
    ]

    LONG_THR = 0.58
    SHORT_THR = 0.58

    def __init__(self, model_path):
        self.model = joblib.load(model_path)

    def __call__(self, df):

        row = (
            df[self.FEATURE_COLS]
            .iloc[[-1]]
            .fillna(0)
        )

        proba = self.model.predict_proba(
            Pool(row)
        )[0]

        p_up, p_dn = proba[1], proba[0]

        if p_up >= self.LONG_THR:
            return "BUY"

        elif p_dn >= self.SHORT_THR:
            return "SELL"

        return "HOLD"

āĻāχ Code-āĻāϰ Feature Requirements: Model-āĻāϰ āϜāĻ¨ā§āϝ āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§Ÿ āϏāĻŦ Feature Column āφāϗ⧇ āĻĨ⧇āϕ⧇ DataFrame-āĻ āϤ⧈āϰāĻŋ āĻĨāĻžāĻ•āϤ⧇ āĻšāĻŦ⧇āĨ¤ āĻļ⧁āϧ⧁ OHLC Data āϏāĻ‚āĻ—ā§āϰāĻš āĻ•āϰāϞ⧇āχ āωāĻĒāϰ⧇āϰ Model āϏāϰāĻžāϏāϰāĻŋ āĻ•āĻžāϜ āĻ•āϰāĻŦ⧇ āύāĻžāĨ¤

Feature Engineering āϕ⧀?

Feature Engineering āĻšāϞ⧋ Raw Market Data āĻĨ⧇āϕ⧇ Model-āĻāϰ āϜāĻ¨ā§āϝ āĻ…āĻ°ā§āĻĨāĻŦāĻš Input āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āĻĒā§āϰāĻ•ā§āϰāĻŋ⧟āĻžāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖ:

āĻĒā§āϰāϤāĻŋāϟāĻŋ Feature-āĻāϰ Calculation Training āĻāĻŦāĻ‚ Inference—āĻĻ⧁āχ āϜāĻžā§ŸāĻ—āĻžā§Ÿ āĻāĻ•āχ āĻšāϤ⧇ āĻšāĻŦ⧇āĨ¤

Confidence Threshold āϕ⧇āύ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ?

Model āϕ⧋āύ⧋ Class-āĻāϰ Probability āĻŦ⧇āĻļāĻŋ āĻĻ⧇āĻ–āĻžāϞ⧇āχ āϏ⧇āϟāĻŋ Execute āĻ•āϰāĻžāϰ āϏāĻŋāĻĻā§āϧāĻžāĻ¨ā§āϤ āύ⧇āĻ“ā§ŸāĻž āωāϚāĻŋāϤ āύ⧟āĨ¤

āĻāĻ–āĻžāύ⧇ LONG_THR āĻ“ SHORT_THR āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇ Confidence Threshold āĻšāĻŋāϏ⧇āĻŦ⧇āĨ¤

āϤāĻŦ⧇ Probability Calibration, Class Imbalance āĻāĻŦāĻ‚ Out-of-Sample Validation āĻĒāϰ⧀āĻ•ā§āώāĻž āύāĻž āĻ•āϰ⧇ 0.58-āϕ⧇ Universal Threshold āĻŽāύ⧇ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻžāĨ¤


ā§§ā§Ē. Pre-Trade Risk Management

Professional Quantitative Infrastructure-āĻāϰ āϏāĻŦāĻšā§‡ā§Ÿā§‡ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ…āĻ‚āĻļāϗ⧁āϞ⧋āϰ āĻāĻ•āϟāĻŋ āĻšāϞ⧋ Risk ManagementāĨ¤

TradeMux Architecture-āĻ Execution-āĻāϰ āφāϗ⧇ Python-āĻ Risk Check āĻ•āϰāĻžāϰ āϧāĻžāϰāĻŖāĻž āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āϤāĻŋāύāϟāĻŋ āĻĒā§āϰāϧāĻžāύ Check āĻ°ā§Ÿā§‡āϛ⧇:

  1. Equity Protection

  2. Total Open Volume Limit

  3. High-Water Mark āĻĨ⧇āϕ⧇ Drawdown

āωāĻĻāĻžāĻšāϰāĻŖ:

def pre_trade_checks(
    snap,
    lots,
    min_equity_ratio,
    max_open_lots,
    max_drawdown,
    equity_high_mark
):

    if snap["equity"] < (
        snap["balance"] * min_equity_ratio
    ):
        return False, "Equity protection triggered"

    if snap["open_lots"] + lots > max_open_lots:
        return False, "Open volume limit exceeded"

    equity_high_mark = max(
        equity_high_mark,
        snap["equity"]
    )

    drawdown = equity_high_mark - snap["equity"]

    if drawdown > max_drawdown:
        return False, "Maximum drawdown exceeded"

    return True, "ok"

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ Simplified Educational IllustrationāĨ¤ āĻŦāĻžāĻ¸ā§āϤāĻŦ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āφāϗ⧇ open_lots, positions, balance, equity āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ Field āϕ⧀āĻ­āĻžāĻŦ⧇ SDK Response āĻĨ⧇āϕ⧇ āϤ⧈āϰāĻŋ āĻšāĻšā§āϛ⧇, āϤāĻž āϏāĻ āĻŋāĻ•āĻ­āĻžāĻŦ⧇ Implement āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

Equity Protection

Balance āĻāĻŦāĻ‚ Equity āĻāĻ• āϜāĻŋāύāĻŋāϏ āύ⧟āĨ¤

Equity Protection āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āϏ⧀āĻŽāĻžāϰ āύāĻŋāĻšā§‡ āύ⧇āĻŽā§‡ āϗ⧇āϞ⧇ āύāϤ⧁āύ Trade Block āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

Maximum Open Volume

āĻāĻ•āϟāĻŋ Portfolio-āϤ⧇ āĻŽā§‹āϟ Position Volume āϏ⧀āĻŽāĻŋāϤ āϰāĻžāĻ–āĻžāϰ āϜāĻ¨ā§āϝ āĻāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§ŸāĨ¤

āĻāϤ⧇ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ Exposure āϤ⧈āϰāĻŋ āĻšāĻ“ā§ŸāĻžāϰ āĻā§āρāĻ•āĻŋ āύāĻŋ⧟āĻ¨ā§āĻ¤ā§āϰāĻŖ āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

High-Water Mark Drawdown

High-Water Mark āĻšāϞ⧋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āϏāĻŽā§Ÿā§‡āϰ āĻŽāĻ§ā§āϝ⧇ āĻ…āĻ°ā§āϜāĻŋāϤ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ Equity ValueāĨ¤

āĻŦāĻ°ā§āϤāĻŽāĻžāύ Equity āϏ⧇āχ āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ āĻŽāĻžāύ āĻĨ⧇āϕ⧇ āĻ•āϤāϟāĻž āĻ•āĻŽā§‡āϛ⧇, āϏ⧇āϟāĻŋ Drawdown āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĒāϰāĻŋāĻŽāĻžāĻĒ āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

āϤāĻŦ⧇ āĻļ⧁āϧ⧁ Dollar Drawdown āύ⧟, Percentage Drawdown āĻāĻŦāĻ‚ Portfolio-Level Risk-āĻ“ āĻŦāĻŋāĻŦ⧇āϚāύāĻž āĻ•āϰāĻž āωāϚāĻŋāϤāĨ¤

āφāϰāĻ“ āϝ⧇āϏāĻŦ Risk Control āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻž āωāϚāĻŋāϤ

āĻāĻ•āϟāĻŋ Production Quant System-āĻ āĻŦāĻŋāĻŦ⧇āϚāύāĻž āĻ•āϰāĻž āϝāĻžā§Ÿ:


ā§§ā§Ģ. Order Execution Architecture

Risk Check āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻšāĻ“ā§ŸāĻžāϰ āĻĒāϰ Python Execution Service TradeMux SDK-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ Order Request āĻĒāĻžāĻ āĻžāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ Method:

āωāĻĻāĻžāĻšāϰāĻŖ:

def execute_signal(
    client,
    direction,
    symbol,
    lots
):

    if direction == "HOLD":
        return None

    if direction == "BUY":
        return client.buy_market(
            symbol=symbol,
            lots=lots
        )

    if direction == "SELL":
        return client.sell_market(
            symbol=symbol,
            lots=lots
        )

    raise ValueError(
        f"Unsupported direction: {direction}"
    )

āĻāχ Function-āϟāĻŋ āĻļ⧁āϧ⧁ SDK Method Call-āĻāϰ IllustrationāĨ¤ āĻŦāĻžāĻ¸ā§āϤāĻŦ Execution-āĻāϰ āφāϗ⧇ Risk Validation, Broker Symbol Mapping, Trading Permission, Market Availability āĻāĻŦāĻ‚ Order Response āϝāĻžāϚāĻžāχ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

Order Response Monitoring

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ Order Result āĻĨ⧇āϕ⧇ ticket āĻ“ price-āĻāϰ āĻŽāϤ⧋ āϤāĻĨā§āϝ Log āĻ•āϰāĻžāϰ āωāĻĻāĻžāĻšāϰāĻŖ āĻ°ā§Ÿā§‡āϛ⧇āĨ¤

āĻāĻ•āϟāĻŋ āĻ­āĻžāϞ⧋ Execution Service-āĻāϰ āωāϚāĻŋāϤ:

āĻļ⧁āϧ⧁ API Call āϏāĻĢāϞ āĻšā§Ÿā§‡āϛ⧇ āĻŽāĻžāύ⧇āχ āϏāĻŦ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ Broker-Side Execution āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻšā§Ÿā§‡āĻ›ā§‡â€”āĻāĻŽāύ āϧāϰ⧇ āύ⧇āĻ“ā§ŸāĻž āωāϚāĻŋāϤ āύ⧟āĨ¤ Terminal āĻāĻŦāĻ‚ Account State āĻĨ⧇āϕ⧇ āĻĢāϞāĻžāĻĢāϞ āϝāĻžāϚāĻžāχ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤


ā§§ā§Ŧ. Emergency Kill Switch: Portfolio Protection-āĻāϰ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ…āĻ‚āĻļ

āĻāĻ•āϟāĻŋ Quantitative Trading Service-āĻāϰ āϜāĻ¨ā§āϝ Emergency Stop Mechanism āĻ…āĻ¤ā§āϝāĻ¨ā§āϤ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤

TradeMux-āĻāϰ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ kill_switch() Method āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ Emergency Workflow āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

result = client.kill_switch()

print(
    "Closed Positions:",
    result.get("closed_positions")
)

print(
    "Deleted Orders:",
    result.get("deleted_orders")
)

print(
    "Total PnL:",
    result.get("total_pnl")
)

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ Return Structure-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻāχ Field-āϗ⧁āϞ⧋ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇:

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ Illustrative ExampleāĨ¤ āϕ⧋āύ⧋ Live Account-āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āφāϗ⧇ Method-āĻāϰ Exact Behaviour, Scope āĻāĻŦāĻ‚ Failure Response Official Documentation āĻĨ⧇āϕ⧇ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

Kill Switch āϕ⧇āύ āĻĻāϰāĻ•āĻžāϰ?

āϧāϰ⧁āύ:

āĻ āϧāϰāύ⧇āϰ āĻĒāϰāĻŋāĻ¸ā§āĻĨāĻŋāϤāĻŋāϤ⧇ System-āĻāϰ āύāϤ⧁āύ Trade āĻŦāĻ¨ā§āϧ āĻ•āϰāĻž āĻāĻŦāĻ‚ Emergency Position Management āĻĒā§āĻ°ā§Ÿā§‹āϜāύ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

Kill Switch-āĻāϰ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž

Kill Switch āĻāĻ•āϟāĻŋ Emergency Control, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻāϟāĻŋ Risk-Free Guarantee āύ⧟āĨ¤

Network Failure, Terminal Disconnection, Broker Outage, Market Gap, Slippage āĻ…āĻĨāĻŦāĻž Execution Rejection-āĻāϰ āĻ•āĻžāϰāϪ⧇ āĻĒā§āϰāĻ¤ā§āϝāĻžāĻļāĻŋāϤ āĻĢāϞāĻžāĻĢāϞ āύāĻžāĻ“ āĻĒāĻžāĻ“ā§ŸāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āϤāĻžāχ Emergency Workflow-āĻāϰ āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ Manual Intervention āĻāĻŦāĻ‚ Independent Monitoring āϰāĻžāĻ–āϤ⧇ āĻšāĻŦ⧇āĨ¤


ā§§ā§­. Multi-Broker Normalization: āĻāĻ•āϟāĻŋ Python Logic, āĻāĻ•āĻžāϧāĻŋāĻ• Broker

TradeMux-āĻāϰ āϏāĻŦāĻšā§‡ā§Ÿā§‡ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Architectural Advantage āĻšāĻŋāϏ⧇āĻŦ⧇ Cross-Broker Normalization āϤ⧁āϞ⧇ āϧāϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

āϧāϰ⧁āύ, āφāĻĒāύāĻžāϰ Strategy EURUSD-āĻāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ Signal āϤ⧈āϰāĻŋ āĻ•āϰ⧇āϛ⧇āĨ¤

āĻ•āĻŋāĻ¨ā§āϤ⧁ Broker A-āĻāϰ Symbol:

EURUSD.raw

Broker B-āĻāϰ Symbol:

EURUSD.pro

Broker C-āĻāϰ Symbol:

EURUSDi

āφāĻŦāĻžāϰ āĻĒā§āϰāϤāĻŋāϟāĻŋ Broker-āĻāϰ Lot Increment āĻāĻŦāĻ‚ Execution Configuration āφāϞāĻžāĻĻāĻž āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āϝāĻĻāĻŋ Strategy Code-āϕ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ Broker-āĻāϰ āϜāĻ¨ā§āϝ āφāϞāĻžāĻĻāĻžāĻ­āĻžāĻŦ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāϤ⧇ āĻšā§Ÿ, āϤāĻžāĻšāϞ⧇ System Maintenance āĻ•āĻ āĻŋāύ āĻšā§Ÿā§‡ āϝāĻžā§ŸāĨ¤

TradeMux-āĻāϰ āωāĻĻā§āĻĻ⧇āĻļā§āϝ āĻšāϞ⧋ āĻāĻ•āϟāĻŋ Normalized SDK Interface-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ Broker-Specific Details āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāĨ¤

āϕ⧋āύ Broker-āĻāϰ āĻ•āĻĨāĻž āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇?

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āωāĻĻāĻžāĻšāϰāĻŖ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻāϏ⧇āϛ⧇:

āĻāĻ›āĻžā§œāĻž OANDA-āĻāϰ āϜāĻ¨ā§āϝ āφāϞāĻžāĻĻāĻž OandaClient Class-āĻāϰ āĻ•āĻĨāĻž āĻŦāϞāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻāχ āϤāĻžāϞāĻŋāĻ•āĻžāϟāĻŋ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ Integration Example; āϏāĻŦ Account Type, Region āĻŦāĻž Broker Configuration-āĻ Support āύāĻŋāĻļā§āϚāĻŋāϤ āϧāϰ⧇ āύ⧇āĻ“ā§ŸāĻž āϝāĻžāĻŦ⧇ āύāĻžāĨ¤

Cross-Broker Architecture-āĻāϰ āϏ⧁āĻŦāĻŋāϧāĻž

āϤāĻŦ⧇ Broker Normalization āĻŽāĻžāύ⧇āχ āϏāĻŦ Broker-āĻāϰ Spread, Execution Quality, Liquidity, Trading Hours āĻŦāĻž Contract Specification āĻāĻ• āĻšāĻŦ⧇ āύāĻžāĨ¤ āĻāϗ⧁āϞ⧋ āφāϞāĻžāĻĻāĻžāĻ­āĻžāĻŦ⧇ āϝāĻžāϚāĻžāχ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

ā§§ā§Ž. Multi-Account Integration

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇, āĻĒā§āϰāϤāĻŋāϟāĻŋ Account-āĻāϰ āϜāĻ¨ā§āϝ āĻĒ⧃āĻĨāĻ• API Key āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻāĻ•āĻžāϧāĻŋāĻ• MTClient Instance āϤ⧈āϰāĻŋ āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖ:

accounts = {
    "Broker_A": client_a,
    "Broker_B": client_b,
    "Broker_C": client_c,
}

āĻāĻ–āĻžāύ⧇ client_a, client_b āĻāĻŦāĻ‚ client_c āĻšāϞ⧋ āĻĒ⧃āĻĨāĻ• Account-āĻāϰ āϜāĻ¨ā§āϝ āϤ⧈āϰāĻŋ Client InstanceāĨ¤

āĻāĻ•āϟāĻŋ Signal Engine āĻĨ⧇āϕ⧇ āĻāĻ•āĻžāϧāĻŋāĻ• Account-āĻāϰ āϜāĻ¨ā§āϝ Signal āϤ⧈āϰāĻŋ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦāĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻĒā§āϰāϤāĻŋāϟāĻŋ Account-āĻāϰ Risk Limit, Capital Allocation āĻāĻŦāĻ‚ Execution Status āφāϞāĻžāĻĻāĻžāĻ­āĻžāĻŦ⧇ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻž āωāϚāĻŋāϤāĨ¤

Multi-Account Design-āĻ āϕ⧀ āϕ⧀ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ?

āĻāĻ•āϟāĻŋ Account-āĻ Execution Failure āĻšāϞ⧇ āĻ…āĻ¨ā§āϝ Account-āĻāϰ Monitoring āϝ⧇āύ āĻ…āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§ŸāĻ­āĻžāĻŦ⧇ āĻŦāĻ¨ā§āϧ āύāĻž āĻšā§Ÿā§‡ āϝāĻžā§Ÿâ€”āĻāĻŽāύ Failure Isolation Design āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤

āĻŦāĻŋāĻļ⧇āώ āϏāϤāĻ°ā§āĻ•āϤāĻž: Multi-Account Broadcast-āϕ⧇ āĻāĻ•āϏāĻ™ā§āϗ⧇ āϏāĻŦ Account-āĻ āĻ…āĻ¨ā§āϧāĻ­āĻžāĻŦ⧇ āĻāĻ•āχ Order āĻĒāĻžāĻ āĻžāύ⧋āϰ āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻž āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āωāϚāĻŋāϤ āύ⧟āĨ¤ āĻĒā§āϰāϤāĻŋāϟāĻŋ Account-āĻāϰ Risk Policy āĻāĻŦāĻ‚ Broker Specification āĻ…āύ⧁āϝāĻžā§Ÿā§€ āφāϞāĻžāĻĻāĻž Validation āĻĨāĻžāĻ•āĻž āĻĒā§āĻ°ā§Ÿā§‹āϜāύāĨ¤


⧧⧝. Supervisor Pattern āĻ“ Automatic Recovery

Production Service-āĻ Network Failure, API Timeout, Process Crash āĻ•āĻŋāĻ‚āĻŦāĻž Unexpected Exception āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āĻāχ āĻ•āĻžāϰāϪ⧇ Supervisor Pattern āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§ŸāĨ¤

Supervisor-āĻāϰ āĻĻāĻžā§ŸāĻŋāĻ¤ā§āĻŦ:

  1. Execution Service āϚāĻžāϞ⧁ āϰāĻžāĻ–āĻžāĨ¤

  2. Failure āĻļāύāĻžāĻ•ā§āϤ āĻ•āϰāĻžāĨ¤

  3. Error Log āϤ⧈āϰāĻŋ āĻ•āϰāĻžāĨ¤

  4. Recovery Delay āĻĒā§āĻ°ā§Ÿā§‹āĻ— āĻ•āϰāĻžāĨ¤

  5. āύāĻŋāĻ°ā§āϧāĻžāϰāĻŋāϤ āϏ⧀āĻŽāĻžāϰ āĻŽāĻ§ā§āϝ⧇ Restart āĻ•āϰāĻžāĨ¤

  6. āĻŦāĻžāϰāĻŦāĻžāϰ Failure āĻšāϞ⧇ Service āĻŦāĻ¨ā§āϧ āĻ•āϰāĻžāĨ¤

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ MAX_KILL_EVENTS āĻāĻŦāĻ‚ RECOVERY_WAIT_SECONDS āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻāĻ•āϟāĻŋ Supervisor Example āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻāĻ•āϟāĻŋ āϏāĻžāϧāĻžāϰāĻŖ Conceptual Structure:

import time

MAX_RESTARTS = 3
RECOVERY_WAIT_SECONDS = 60


def supervised_run(service_function):

    restart_count = 0

    while restart_count < MAX_RESTARTS:

        try:
            service_function()
            return

        except KeyboardInterrupt:
            print("Manual shutdown")
            return

        except Exception as error:

            restart_count += 1

            print(
                f"Service failed: {error}"
            )

            if restart_count >= MAX_RESTARTS:
                print("Restart limit reached")
                return

            time.sleep(
                RECOVERY_WAIT_SECONDS
            )

āĻāϟāĻŋ Supervisor Pattern āĻŦā§‹āĻāĻžāύ⧋āϰ āĻāĻ•āϟāĻŋ āϏāĻžāϧāĻžāϰāĻŖ Illustration; āĻāϟāĻŋ āύāĻŋāĻŦāĻ¨ā§āϧ⧇āϰ āĻĒā§‚āĻ°ā§āĻŖ Production Service-āĻāϰ āĻšā§āĻŦāĻšā§ Implementation āύ⧟āĨ¤

āϕ⧇āύ Restart Limit āĻĒā§āĻ°ā§Ÿā§‹āϜāύ?

āĻāĻ•āϟāĻŋ Service āϝāĻĻāĻŋ āĻāĻ•āχ Failure-āĻāϰ āĻ•āĻžāϰāϪ⧇ āĻŦāĻžāϰāĻŦāĻžāϰ Restart āĻšāϤ⧇ āĻĨāĻžāϕ⧇, āϤāĻžāĻšāϞ⧇:

āϤāĻžāχ Restart-āĻāϰ āφāϗ⧇ State Recovery, Duplicate Prevention āĻāĻŦāĻ‚ Account Reconciliation āĻ•āϰāĻž āĻĒā§āĻ°ā§Ÿā§‹āϜāύāĨ¤


⧍ā§Ļ. Production Quant Backbone: PoC āĻĨ⧇āϕ⧇ Institutional-Style Workflow

TradeMux-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• Architecture-āϕ⧇ āϧāĻžāĻĒ⧇ āϧāĻžāĻĒ⧇ āĻŦ⧜ āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

Stage 1: Proof of Concept

āĻĒā§āϰāĻĨāĻŽā§‡ Demo Account āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇:

āĻ āĻĒāĻ°ā§āϝāĻžā§Ÿā§‡ Live Order Execution āύ⧟, āĻŦāϰāĻ‚ Integration Verification-āϕ⧇ āĻ…āĻ—ā§āϰāĻžāϧāĻŋāĻ•āĻžāϰ āĻĻāĻŋāύāĨ¤

Stage 2: Research Pipeline Integration

āĻāϰāĻĒāϰ Python Research Engine āϝ⧁āĻ•ā§āϤ āĻ•āϰ⧁āύ:

āĻāĻ–āĻžāύ⧇ Research Signal āĻāĻŦāĻ‚ Execution Signal āφāϞāĻžāĻĻāĻž āĻ•āϰ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāĻž āĻ­āĻžāϞ⧋āĨ¤

Stage 3: Risk-Controlled Execution

Demo Environment-āĻ āϝāĻžāϚāĻžāχ āĻ•āϰ⧁āύ:

Stage 4: VPS Deployment

Production-Style Deployment-āĻāϰ āϜāĻ¨ā§āϝ:

āĻāϏāĻŦ āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻž āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

Stage 5: Multi-Account Expansion

āĻāĻ•āĻžāϧāĻŋāĻ• Account āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻžāϰ āφāϗ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ Account-āĻāϰ:

āφāϞāĻžāĻĻāĻžāĻ­āĻžāĻŦ⧇ āϝāĻžāϚāĻžāχ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

Stage 6: Cross-Platform Integration

MetaTrader 4, MetaTrader 5 āĻāĻŦāĻ‚ OANDA-āĻāϰ āϜāĻ¨ā§āϝ āύāĻŋāĻŦāĻ¨ā§āϧ⧇ āĻĒ⧃āĻĨāĻ• Client Class-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ Integration Workflow āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āϤāĻŦ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ Platform-āĻāϰ API Behaviour, Data Model āĻāĻŦāĻ‚ Execution Semantics āφāϞāĻžāĻĻāĻž āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻāĻ•āχ Call Pattern āĻĨāĻžāĻ•āϞ⧇āĻ“ āϏāĻŦ Operation āĻ…āĻ­āĻŋāĻ¨ā§āύ āϧāϰ⧇ āύ⧇āĻ“ā§ŸāĻž āϝāĻžāĻŦ⧇ āύāĻžāĨ¤


⧍⧧. Monitoring, Logging āĻāĻŦāĻ‚ Operational Observability

āĻāĻ•āϟāĻŋ Quant System-āĻāϰ āϜāĻ¨ā§āϝ āĻļ⧁āϧ⧁ Signal Generation āϝāĻĨ⧇āĻˇā§āϟ āύ⧟āĨ¤ āĻĒ⧁āϰ⧋ Execution Lifecycle āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻŖ āĻ•āϰāĻž āĻĒā§āĻ°ā§Ÿā§‹āϜāύāĨ¤

āĻāĻ•āϟāĻŋ Monitoring Dashboard-āĻ āϰāĻžāĻ–āĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇:

Monitoring Metric Purpose Account Balance Account Value Equity Current Account Equity Floating PnL Open Position Profit/Loss Open Positions Position Count Open Volume Total Exposure Last Market Data Time Data Freshness Last Signal Time Signal Freshness API Response Time Communication Health Order Status Execution Monitoring Error Count Reliability Monitoring Drawdown Portfolio Risk

Logging Strategy

āĻĒā§āϰāϤāĻŋāϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Event Log āĻ•āϰāĻž āωāϚāĻŋāϤ:

API Key, Password āĻŦāĻž āĻ…āĻ¨ā§āϝ Secret āĻ•āĻ–āύ⧋ Log āĻ•āϰāĻž āωāϚāĻŋāϤ āύ⧟āĨ¤


⧍⧍. Troubleshooting: āϏāĻžāϧāĻžāϰāĻŖ āϏāĻŽāĻ¸ā§āϝāĻž āĻ“ āϏāĻŽāĻžāϧāĻžāύ⧇āϰ āĻĻāĻŋāĻ•āύāĻŋāĻ°ā§āĻĻ⧇āĻļāύāĻž

āϏāĻŽāĻ¸ā§āϝāĻž ā§§: Python Client Connection Failure

āϏāĻŽā§āĻ­āĻžāĻŦā§āϝ āĻ•āĻžāϰāĻŖ:

āĻ•āϰāĻŖā§€ā§Ÿ:

āϏāĻŽāĻ¸ā§āϝāĻž ⧍: MetaTrader EA āĻ•āĻžāϜ āĻ•āϰāϛ⧇ āύāĻž

āϏāĻŽā§āĻ­āĻžāĻŦā§āϝ āĻ•āĻžāϰāĻŖ:

āĻ•āϰāĻŖā§€ā§Ÿ:

āϏāĻŽāĻ¸ā§āϝāĻž ā§Š: OHLC Data āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž

āϏāĻŽā§āĻ­āĻžāĻŦā§āϝ āĻ•āĻžāϰāĻŖ:

āĻ•āϰāĻŖā§€ā§Ÿ:

āϏāĻŽāĻ¸ā§āϝāĻž ā§Ē: Order Request āϏāĻĢāϞ āĻšāϞ⧇āĻ“ Position āĻĻ⧇āĻ–āĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž

āϏāĻŽā§āĻ­āĻžāĻŦā§āϝ āĻ•āĻžāϰāĻŖ:

āĻ•āϰāĻŖā§€ā§Ÿ:

āϏāĻŽāĻ¸ā§āϝāĻž ā§Ģ: Service āĻŦāĻžāϰāĻŦāĻžāϰ Restart āĻšāĻšā§āϛ⧇

āϏāĻŽā§āĻ­āĻžāĻŦā§āϝ āĻ•āĻžāϰāĻŖ:

āĻ•āϰāĻŖā§€ā§Ÿ:


ā§¨ā§Š. TradeMux-āĻāϰ Architecture-āĻāϰ āϏ⧁āĻŦāĻŋāϧāĻž āĻ“ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž

āĻĒā§āϰāϧāĻžāύ āϏ⧁āĻŦāĻŋāϧāĻž

ā§§. Research āĻ“ Execution Separation

Python-āĻāϰ Research Logic MetaTrader-āĻāϰ Execution Logic āĻĨ⧇āϕ⧇ āφāϞāĻžāĻĻāĻž āĻĨāĻžāϕ⧇āĨ¤

⧍. Broker Abstraction

Broker-Specific Configuration-āĻāϰ āĻĒā§āϰāĻ­āĻžāĻŦ Python Strategy Code-āĻāϰ āĻ“āĻĒāϰ āĻ•āĻŽāĻžāύ⧋āϰ āϞāĻ•ā§āĻˇā§āϝ āĻ°ā§Ÿā§‡āϛ⧇āĨ¤

ā§Š. Machine Learning Integration

CatBoost-āϏāĻš Python-Based Model Pipeline āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

ā§Ē. Unified Account Monitoring

Normalized Account āĻ“ Position Data āĻĻāĻŋā§Ÿā§‡ Common Monitoring Layer āϤ⧈āϰāĻŋ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦāĨ¤

ā§Ģ. Multi-Account Support Pattern

āĻĒā§āϰāϤāĻŋāϟāĻŋ Account-āĻāϰ āϜāĻ¨ā§āϝ āĻĒ⧃āĻĨāĻ• Client āĻ“ API Key āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ Architecture āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

ā§Ŧ. Emergency Control

kill_switch()-āĻāϰ āĻŽāϤ⧋ Emergency Workflow āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

ā§­. VPS-Friendly EA Design

āύāĻŋāĻŦāĻ¨ā§āϧ⧇ Third-Party DLL āĻ›āĻžā§œāĻžāχ WebRequest-Based EA Architecture āĻĻ⧇āĻ–āĻžāύ⧋ āĻšā§Ÿā§‡āϛ⧇āĨ¤

āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž āĻ“ āϝāĻžāϚāĻžāĻ‡ā§Ÿā§‡āϰ āĻŦāĻŋāώ⧟


⧍ā§Ē. Professional Quant Developer-āĻĻ⧇āϰ āϜāĻ¨ā§āϝ TradeMux āϕ⧇āύ āφāĻ•āĻ°ā§āώāĻŖā§€ā§Ÿ?

TradeMux-āĻāϰ āĻŽā§‚āϞ āφāĻ•āĻ°ā§āώāĻŖ āϕ⧋āύ⧋ āĻāĻ•āϟāĻŋ Technical Indicator āĻŦāĻž Trading Strategy āύ⧟āĨ¤ āĻŦāϰāĻ‚ āĻāϟāĻŋ āĻāĻ•āϟāĻŋ Infrastructure-Level Problem āϏāĻŽāĻžāϧāĻžāύ⧇āϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰāϛ⧇āĨ¤

āĻ…āύ⧇āĻ• Quant Developer Python-āĻ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ Research Pipeline āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϏ⧇āϟāĻŋāϕ⧇ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ Broker āĻāĻŦāĻ‚ Trading Terminal-āĻāϰ āϏāĻ™ā§āϗ⧇ āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻž āφāϞāĻžāĻĻāĻž Engineering ChallengeāĨ¤

āĻāĻ•āϟāĻŋ Normalized Integration Layer āĻĨāĻžāĻ•āϞ⧇ Development Team-āϕ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ Broker-āĻāϰ āϜāĻ¨ā§āϝ Research Logic āĻĒ⧁āύāĻ°ā§āϞāĻŋāĻ–āϤ⧇ āĻšā§Ÿ āύāĻžâ€”āĻāϟāĻžāχ āĻāχ Architecture-āĻāϰ āĻŽā§‚āϞ Value PropositionāĨ¤

āĻāϟāĻŋ āĻŦāĻŋāĻļ⧇āώāĻ­āĻžāĻŦ⧇ āωāĻĒāϝ⧋āĻ—ā§€ āĻšāϤ⧇ āĻĒāĻžāϰ⧇:

āϝāĻžāϰāĻž Research, Modeling, Risk āĻāĻŦāĻ‚ Execution-āϕ⧇ āφāϞāĻžāĻĻāĻž Component āĻšāĻŋāϏ⧇āĻŦ⧇ āϏāĻžāϜāĻžāϤ⧇ āϚāĻžāύ, āϤāĻžāĻĻ⧇āϰ āϜāĻ¨ā§āϝ TradeMux-āĻāϰ āĻāχ Architecture āĻāĻ•āϟāĻŋ āφāĻ—ā§āϰāĻšāϜāύāĻ• Design ApproachāĨ¤

⧍ā§Ģ. Final Verdict: Python Intelligence āĻ“ Broker Execution-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ Bridge

Quantitative Trading-āĻāϰ āĻ­āĻŦāĻŋāĻˇā§āĻ¯ā§Ž āĻļ⧁āϧ⧁ āφāϰāĻ“ āϜāϟāĻŋāϞ Machine Learning Model āϤ⧈āϰāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āύ⧟āĨ¤ Data Pipeline, Risk Engine, Execution Infrastructure, Monitoring āĻāĻŦāĻ‚ Broker Integration—āϏāĻŦāĻ•āĻŋāϛ⧁āϕ⧇ āĻāĻ•āϏāĻ™ā§āϗ⧇ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāĻ“ āϏāĻŽāĻžāύ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤

TradeMux-āĻāϰ āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦāĻŋāϤ Architecture āĻāχ āϜāĻžā§ŸāĻ—āĻžāϟāĻŋāϤ⧇āχ āϗ⧁āϰ⧁āĻ¤ā§āĻŦ āĻŦāĻšāύ āĻ•āϰ⧇āĨ¤

Python-āĻ Research āĻ“ Signal Generation, āĻāĻ•āϟāĻŋ āĻĒ⧃āĻĨāĻ• Execution Service-āĻ Risk Management, TradeMux-āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ Normalized Communication āĻāĻŦāĻ‚ MetaTrader-āĻāϰ Native Execution—āĻāχ āϚāĻžāϰāϟāĻŋ āĻ…āĻ‚āĻļāϕ⧇ āĻāĻ•āĻ¤ā§āϰ⧇ āϏāĻžāϜāĻŋā§Ÿā§‡ āĻāĻ•āϟāĻŋ Modular Quantitative Trading Infrastructure āϤ⧈āϰāĻŋ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦāĨ¤

āϏāĻŦāĻšā§‡ā§Ÿā§‡ āφāĻ•āĻ°ā§āώāĻŖā§€ā§Ÿ āĻŦāĻŋāώ⧟ āĻšāϞ⧋, Research Logic āĻāĻŦāĻ‚ Broker Execution-āϕ⧇ āφāϞāĻžāĻĻāĻž āϰāĻžāĻ–āĻžāϰ āĻĢāϞ⧇ āĻ­āĻŦāĻŋāĻˇā§āϝāϤ⧇ āύāϤ⧁āύ Model, āύāϤ⧁āύ Feature Pipeline āĻ•āĻŋāĻ‚āĻŦāĻž āύāϤ⧁āύ Account Integration āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻžāϰ āϏāĻŽā§Ÿ āĻĒ⧁āϰ⧋ Strategy Architecture āĻĒ⧁āύāĻ°ā§āϞāĻŋāĻ–āύ⧇āϰ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ āĻ•āĻŽāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āϤāĻŦ⧇ āĻāĻ•āϟāĻŋ āĻŦāĻŋāώ⧟ āĻŽāύ⧇ āϰāĻžāĻ–āϤ⧇ āĻšāĻŦ⧇: āϕ⧋āύ⧋ Integration Platform āύāĻŋāĻœā§‡ āĻĨ⧇āϕ⧇ āĻāĻ•āϟāĻŋ Trading Strategy-āϕ⧇ Profitable āĻ•āϰ⧇ āύāĻžāĨ¤ Strategy Validation, Data Quality, Risk Management, Execution Quality āĻāĻŦāĻ‚ Operational Reliability—āϏāĻŦāĻ•āĻŋāϛ⧁āχ āϏāĻŽāĻžāύ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤

āϝāĻĻāĻŋ āφāĻĒāύāĻžāϰ āϞāĻ•ā§āĻˇā§āϝ āĻšā§Ÿ Python-Based Quant Research āĻāĻŦāĻ‚ MetaTrader-Based Broker Execution-āϕ⧇ āĻāĻ•āϟāĻŋ Structured, Modular āĻ“ Multi-Account Architecture-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āύāĻŋā§Ÿā§‡ āφāϏāĻž, āϤāĻžāĻšāϞ⧇ TradeMux-āĻāϰ āĻāχ Approach āĻ…āĻŦāĻļā§āϝāχ āĻ—āĻ­ā§€āϰāĻ­āĻžāĻŦ⧇ Explore āĻ•āϰāĻžāϰ āĻŽāϤ⧋āĨ¤

āĻāĻ•āϟāĻŋ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ Quant System-āĻāϰ āφāϏāϞ āĻĒāϰāĻŋāϚ⧟ āĻļ⧁āϧ⧁ āϤāĻžāϰ Signal Generation āĻ¨ā§Ÿâ€”āĻŦāϰāĻ‚ Research āĻĨ⧇āϕ⧇ Execution āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻĒā§āϰāϤāĻŋāϟāĻŋ āϧāĻžāĻĒ āĻ•āϤāϟāĻž āĻĒāϰāĻŋāĻˇā§āĻ•āĻžāϰ, āύāĻŋ⧟āĻ¨ā§āĻ¤ā§āϰāĻŋāϤ āĻāĻŦāĻ‚ āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻŖāϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰāϛ⧇, āϏ⧇āϟāĻŋāχ āϤāĻžāϰ āĻĒā§āϰāĻ•ā§ƒāϤ Engineering StrengthāĨ¤

Python Thinks. TradeMux Connects. MetaTrader Executes.


Exit mobile version