āĻāϧā§āύāĻŋāĻ 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 SDK: Python Application āĻĨā§āĻā§ Account Information, Market Data āĻāĻŦāĻ Trading Operations āĻĒāϰāĻŋāĻāĻžāϞāύāĻžāϰ InterfaceāĨ¤
-
TradeMux Bridge/API: Python āĻāĻŦāĻ Terminal-āĻāϰ āĻŽāϧā§āϝ⧠Communication āĻ Normalization LayerāĨ¤
-
TradeMux EA: MetaTrader Terminal-āĻāϰ āĻŽāϧā§āϝ⧠āĻĨāĻžāĻāĻž Execution Component, āϝāĻž Bridge āĻĨā§āĻā§ Command āĻā§āϰāĻšāĻŖ āĻāϰ⧠Native Trading Functions āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āĨ¤
āĻāĻāĻŋ Python āĻŦāĻž MetaTrader-āĻāϰ āĻŦāĻŋāĻāϞā§āĻĒ āύā§āĨ¤ āĻŦāϰāĻ āĻĻā§āĻ Environment-āĻāϰ āĻāϞāĻžāĻĻāĻž āĻĻāĻžā§āĻŋāϤā§āĻŦ āĻŦāĻāĻžā§ āϰā§āĻā§ āϤāĻžāĻĻā§āϰ āĻŽāϧā§āϝ⧠āĻāĻāĻāĻŋ Integration āϤā§āϰāĻŋ āĻāϰā§āĨ¤
āĻā§āύ Quant Developer-āĻĻā§āϰ āĻāύā§āϝ āĻāĻāĻŋ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ?
āĻāĻāĻāĻŋ Professional Quantitative Trading System-āĻ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻā§ā§āĻāĻāĻŋ āĻāϞāĻžāĻĻāĻž āĻāĻžāĻ āĻĨāĻžāĻā§:
-
Market Data Collection
-
Data Cleaning āĻ Preprocessing
-
Feature Engineering
-
Statistical Modeling
-
Machine Learning Prediction
-
Strategy Backtesting
-
Portfolio Optimization
-
Risk Management
-
Order Execution
-
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-āĻ āϰāĻžāĻāĻž āϝāĻžā§:
-
Historical Market Data Analysis
-
pandas āĻ NumPy-Based Time-Series Processing
-
Machine Learning Model Training
-
CatBoost, LightGBM āĻ Scikit-learn Integration
-
PyTorch-Based Modeling
-
Feature Engineering
-
Technical Indicator Calculation
-
L1 Trend Filtering
-
Backtesting
-
Walk-Forward Validation
-
Portfolio Risk Calculation
-
Value at Risk āĻŦāĻž VaR-Based Allocation
-
Trading Signal Generation
āĻ āϰā§āĻĨāĻžā§ Python āĻšāĻā§āĻā§ Quant System-āĻāϰ Intelligence LayerāĨ¤
MetaTrader 5: Broker Connectivity āĻāĻŦāĻ Execution
MetaTrader 5 Environment-āĻāϰ āĻĻāĻžā§āĻŋāϤā§āĻŦ:
-
Broker Trading Server-āĻāϰ āϏāĻā§āĻā§ āϝā§āĻāĻžāϝā§āĻ
-
Market Quote Access
-
Native Order Processing
-
Position Management
-
Pending Order Handling
-
Broker-Side Trading Operations
-
Terminal-Based Execution
āĻāĻāĻžāύ⧠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 āĻŦāĻŋāĻļā§āϞā§āώāĻŖ āĻāϰāĻž āĻšā§āĨ¤
āĻāĻĻāĻžāĻšāϰāĻŖ:
-
29āĻāĻŋ Instrument-āĻāϰ Historical Data Analysis
-
45,000 H1 Bars Processing
-
L1 Trend Filtering
-
Feature Space Construction
-
CatBoost Prediction
-
Portfolio Risk Estimation
-
Signal Generation
āĻāϞā§āϞā§āĻāĻŋāϤ āϏāĻāĻā§āϝāĻžāĻā§āϞ⧠āϏāĻāĻļā§āϞāĻŋāώā§āĻ āύāĻŋāĻŦāύā§āϧ⧠āĻĒā§āϰāĻĻāϰā§āĻļāĻŋāϤ 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 āϏāĻŽā§āĻĒāύā§āύ āĻāϰā§āĨ¤
āĻāĻāĻžāύ⧠āĻĨāĻžāĻāϤ⧠āĻĒāĻžāϰā§:
-
Pre-Trade Risk Validation
-
Position Monitoring
-
Equity Protection
-
Drawdown Monitoring
-
Duplicate Position Prevention
-
Order Lifecycle Management
-
Emergency Shutdown Logic
-
Logging āĻ Error Handling
āĻāĻāĻžāύ⧠āĻāĻāĻāĻŋ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ 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 āĻāϞāĻžāĻĻāĻž āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ:
-
EURUSD.raw
-
EURUSD.pro
-
EURUSDi
āĻāĻāĻāĻāĻžāĻŦā§ 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:
-
balance -
equity -
floating_pnl -
open_positions -
open_trades -
pending_orders -
account_number -
server -
updated_at
āĻāϰ āĻĢāϞ⧠Python-āĻāϰ Risk Dashboard āĻŦāĻž Monitoring Service āĻāĻāĻ āϧāϰāύā§āϰ Data Structure āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻžāĻ āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤
4.2 Unified Position Monitoring
list_positions() Method-āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ Open Position āϏāĻŽā§āĻĒāϰā§āĻā§ āϤāĻĨā§āϝ āĻĒāĻžāĻā§āĻž āϝāĻžā§āĨ¤
āύāĻŋāĻŦāύā§āϧ⧠āĻĻā§āĻāĻžāύ⧠Position Structure-āĻāϰ Field:
-
ticket -
symbol -
type -
volume -
open_price -
profit
āĻāĻāĻŋ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ, āĻāĻžāϰāĻŖ āĻāĻāĻāĻŋ Portfolio Monitoring System-āĻāϰ āĻāύā§āϝ āĻĒā§āϰāϤāĻŋāĻāĻŋ Broker-āĻāϰ āĻāϞāĻžāĻĻāĻž Position Parser āϤā§āϰāĻŋ āĻāϰāĻžāϰ āĻĒā§āϰā§ā§āĻāύ āĻāĻŽā§ āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤
4.3 Historical OHLC Data Retrieval
get_ohlc() Method-āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ MetaTrader Environment āĻĨā§āĻā§ Historical OHLC Data Python Process-āĻ āĻāύāĻž āϝāĻžā§āĨ¤
āĻāĻāĻžāύ⧠āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ Parameter:
-
symbol -
timeframe -
count -
as_df
āĻāĻĻāĻžāĻšāϰāĻŖ āĻšāĻŋāϏā§āĻŦā§ āύāĻŋāĻŦāύā§āϧ⧠"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 āĻĻā§āĻāĻžāύ⧠āĻšā§ā§āĻā§:
-
buy_market() -
sell_market()
āĻāĻā§āϞ⧠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 āĻāϰā§āύāĨ¤
āϤāĻžāϰāĻĒāϰ:
-
MetaTrader 5 āĻāĻžāϞ⧠āĻāϰā§āύāĨ¤
-
Demo Trading Account āϤā§āϰāĻŋ āĻāϰā§āύāĨ¤
-
Broker Server-āĻāϰ āϏāĻā§āĻā§ Login āĻāϰā§āύāĨ¤
-
Market Watch-āĻ āĻĒā§āϰā§ā§āĻāύā§ā§ Symbol āĻĻā§āĻāĻž āϝāĻžāĻā§āĻā§ āĻāĻŋ āύāĻž āϝāĻžāĻāĻžāĻ āĻāϰā§āύāĨ¤
-
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-āĻ:
-
ToolsMenu āĻā§āϞā§āύāĨ¤ -
OptionsāύāĻŋāϰā§āĻŦāĻžāĻāύ āĻāϰā§āύāĨ¤ -
Expert AdvisorsTab-āĻ āϝāĻžāύāĨ¤ -
Allow WebRequest for listed URLEnable āĻāϰā§āύāĨ¤ -
TradeMux-āĻāϰ Official Documentation-āĻ āĻĻā§āĻā§āĻž āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ API Domain āϝā§āĻā§āϤ āĻāϰā§āύāĨ¤
āĻā§āύ⧠āĻ āĻāĻžāύāĻž āĻŦāĻž āĻ āύāĻŋāϰā§āĻāϰāϝā§āĻā§āϝ Domain āĻ āύā§āĻŽāϤāĻŋ āĻĻā§āĻŦā§āύ āύāĻžāĨ¤
WebRequest Permission āĻĻā§āĻā§āĻžāϰ āĻāĻā§ Domain-āĻāϰ Authenticity āϝāĻžāĻāĻžāĻ āĻāϰāĻž āĻāϰā§āϰāĻŋāĨ¤
Step 4: TradeMux EA Chart-āĻ Attach āĻāϰā§āύ
-
Navigator Panel āĻĨā§āĻā§ TradeMux EA āύāĻŋāϰā§āĻŦāĻžāĻāύ āĻāϰā§āύāĨ¤
-
āĻāĻāĻāĻŋ āĻāĻĒāϝā§āĻā§āϤ Chart āĻā§āϞā§āύāĨ¤
-
EA-āĻāĻŋ Chart-āĻ Attach āĻāϰā§āύāĨ¤
-
Input Parameters-āĻ āĻĒā§āϰā§ā§āĻāύā§ā§ API Key āĻĻāĻŋāύāĨ¤
-
Terminal-āĻāϰ Journal āĻāĻŦāĻ Experts Tab āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
EA āϏāĻĢāϞāĻāĻžāĻŦā§ Initialize āĻšā§ā§āĻā§ āĻāĻŋ āύāĻž āύāĻŋāĻļā§āĻāĻŋāϤ āύāĻž āĻšā§ā§ Python Execution Service āĻāĻžāϞ⧠āĻāϰāĻŦā§āύ āύāĻžāĨ¤
Step 5: API Key āϤā§āϰāĻŋ āĻāϰā§āύ
āύāĻŋāĻŦāύā§āϧ āĻ āύā§āϝāĻžā§ā§, āĻāĻāĻāĻŋ API Key āĻāĻāĻāĻŋ Account-āĻāϰ āϏāĻā§āĻā§ āϏāĻŽā§āĻĒāϰā§āĻāĻŋāϤāĨ¤
āĻāĻāĻžāϧāĻŋāĻ Account āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻšāϞ⧠āĻĒā§āϰāϤāĻŋāĻāĻŋ Account-āĻāϰ āĻāύā§āϝ āĻĒā§āĻĨāĻ Key āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
API Key āϏāĻāϰāĻā§āώāĻŖā§āϰ āĻā§āώā§āϤā§āϰā§:
-
Source Code-āĻ āϏāϰāĻžāϏāϰāĻŋ Key āϞāĻŋāĻāĻŦā§āύ āύāĻžāĨ¤
-
Public GitHub Repository-āϤ⧠Key Commit āĻāϰāĻŦā§āύ āύāĻžāĨ¤
-
Environment Variable āĻŦāĻž Secret Manager āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύāĨ¤
-
Demo āĻāĻŦāĻ Live Credential āĻāϞāĻžāĻĻāĻž āϰāĻžāĻā§āύāĨ¤
-
Key Leak āĻšāϞ⧠āϏāĻāĻļā§āϞāĻŋāώā§āĻ Credential Revoke āĻŦāĻž Rotate āĻāϰā§āύāĨ¤
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 āϤā§āϰāĻŋāϰ āĻāύā§āϝ āĻŽā§āϞāϤ āĻĒā§āϰā§ā§āĻāύ:
-
Account API Key
-
TradeMux Server URL
-
Timeout Configuration
āĻāĻĻāĻžāĻšāϰāĻŖ:
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 āĻĻāĻŋā§ā§ āϤā§āϰāĻŋ āĻāϰāĻž āϝāĻžā§:
-
Portfolio Dashboard
-
Exposure Summary
-
Symbol-Wise Position Report
-
Floating PnL Monitor
-
Risk Alert System
-
Duplicate Position Detection
ā§§ā§Ļ. 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-āĻ āĻāϰāĻ āϝāĻžāĻāĻžāĻ āĻāϰāĻž āĻĒā§āϰā§ā§āĻāύ:
-
Duplicate Timestamp
-
Missing Bars
-
Invalid OHLC Relationship
-
Unexpected Price Values
-
Timezone Consistency
-
Outlier Detection
-
Data Leakage
-
Incomplete Current Candle
āĻāĻāĻāĻŋ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ 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 āĻāϰāĻ āĻļāĻā§āϤāĻŋāĻļāĻžāϞ⧠āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤ āϝā§āĻŽāύ:
-
Stale Data Detection
-
API Timeout Handling
-
Retry Policy
-
Error Classification
-
Signal Expiry
-
Duplicate Signal Prevention
-
Logging āĻ Alerting
āĻā§āύ⧠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 āϤā§āϰāĻŋ āĻāϰāĻžāϰ āĻĒā§āϰāĻā§āϰāĻŋā§āĻžāĨ¤
āĻāĻĻāĻžāĻšāϰāĻŖ:
-
ret_1: āĻāĻ Period-āĻāϰ Return -
ret_5: āĻĒāĻžāĻāĻ Period-āĻāϰ Return -
vol_20: ⧍ā§Ļ Period-āĻāϰ Volatility -
rsi_close_14: RSI-āĻāĻŋāϤā§āϤāĻŋāĻ Feature -
l1_slope: L1 Filter āĻĨā§āĻā§ Trend Slope -
bb_pos_20: Bollinger Band Position
āĻĒā§āϰāϤāĻŋāĻāĻŋ 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 āϰā§ā§āĻā§:
-
Equity Protection
-
Total Open Volume Limit
-
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 āĻāĻ āĻāĻŋāύāĻŋāϏ āύā§āĨ¤
-
Balance āĻšāϞ⧠Closed Trade-āĻāϰ āĻĒāϰ Account-āĻāϰ āĻšāĻŋāϏāĻžāĻŦāĨ¤
-
Equity āĻšāϞ⧠Balance-āĻāϰ āϏāĻā§āĻā§ Floating Profit/Loss-āĻāϰ āĻĒā§āϰāĻāĻžāĻŦāϏāĻš āĻŦāϰā§āϤāĻŽāĻžāύ Account ValueāĨ¤
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-āĻ āĻŦāĻŋāĻŦā§āĻāύāĻž āĻāϰāĻž āϝāĻžā§:
-
Maximum Daily Loss
-
Maximum Position Count
-
Maximum Symbol Exposure
-
Maximum Correlated Exposure
-
Spread Threshold
-
Slippage Threshold
-
Market Session Restrictions
-
Data Staleness Check
-
API Failure Circuit Breaker
-
Duplicate Order Prevention
-
Manual Emergency Stop
ā§§ā§Ģ. Order Execution Architecture
Risk Check āϏāĻŽā§āĻĒāύā§āύ āĻšāĻā§āĻžāϰ āĻĒāϰ Python Execution Service TradeMux SDK-āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ Order Request āĻĒāĻžāĻ āĻžāϤ⧠āĻĒāĻžāϰā§āĨ¤
āύāĻŋāĻŦāύā§āϧ⧠āĻŦā§āϝāĻŦāĻšā§āϤ Method:
-
buy_market(symbol=..., lots=...) -
sell_market(symbol=..., lots=...)
āĻāĻĻāĻžāĻšāϰāĻŖ:
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-āĻāϰ āĻāĻāĻŋāϤ:
-
Request Timestamp āϏāĻāϰāĻā§āώāĻŖ āĻāϰāĻž
-
Signal ID āϏāĻāϰāĻā§āώāĻŖ āĻāϰāĻž
-
Order Response āϏāĻāϰāĻā§āώāĻŖ āĻāϰāĻž
-
Execution Failure āĻāϞāĻžāĻĻāĻž āĻāϰāĻž
-
Duplicate Request āĻāĻāĻāĻžāύā§
-
Expected āĻ Actual Execution Price āϤā§āϞāύāĻž āĻāϰāĻž
-
Reconciliation āĻāϰāĻž
āĻļā§āϧ⧠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-āĻā§āϞ⧠āĻĻā§āĻāĻžāύ⧠āĻšā§ā§āĻā§:
-
closed_positions -
deleted_orders -
total_pnl
āĻāĻāĻŋ āĻāĻāĻāĻŋ Illustrative ExampleāĨ¤ āĻā§āύ⧠Live Account-āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻžāϰ āĻāĻā§ Method-āĻāϰ Exact Behaviour, Scope āĻāĻŦāĻ Failure Response Official Documentation āĻĨā§āĻā§ āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
Kill Switch āĻā§āύ āĻĻāϰāĻāĻžāϰ?
āϧāϰā§āύ:
-
Equity āύāĻŋāϰā§āϧāĻžāϰāĻŋāϤ āϏā§āĻŽāĻžāϰ āύāĻŋāĻā§ āĻāϞ⧠āĻā§āĻā§āĨ¤
-
Daily Loss Limit āĻ āϤāĻŋāĻā§āϰāĻŽ āĻāϰā§āĻā§āĨ¤
-
Market Data Feed āĻ āϏā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻāĨ¤
-
Model āĻā§āϞ Signal āϤā§āϰāĻŋ āĻāϰāĻā§āĨ¤
-
Execution Service āĻ āύāĻžāĻāĻžāĻā§āĻā§āώāĻŋāϤ āĻāĻāϰāĻŖ āĻāϰāĻā§āĨ¤
āĻ āϧāϰāύā§āϰ āĻĒāϰāĻŋāϏā§āĻĨāĻŋāϤāĻŋāϤ⧠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-āĻāϰ āĻāĻĨāĻž āĻāϞā§āϞā§āĻ āĻāϰāĻž āĻšā§ā§āĻā§?
āύāĻŋāĻŦāύā§āϧ⧠āĻāĻĻāĻžāĻšāϰāĻŖ āĻšāĻŋāϏā§āĻŦā§ āĻāϏā§āĻā§:
-
RoboForex
-
IC Markets
-
Alpari
āĻāĻāĻžā§āĻž OANDA-āĻāϰ āĻāύā§āϝ āĻāϞāĻžāĻĻāĻž OandaClient Class-āĻāϰ āĻāĻĨāĻž āĻŦāϞāĻž āĻšā§ā§āĻā§āĨ¤
āĻāĻ āϤāĻžāϞāĻŋāĻāĻžāĻāĻŋ āϏāĻāĻļā§āϞāĻŋāώā§āĻ āύāĻŋāĻŦāύā§āϧ⧠āĻĒā§āϰāĻĻāϰā§āĻļāĻŋāϤ Integration Example; āϏāĻŦ Account Type, Region āĻŦāĻž Broker Configuration-āĻ Support āύāĻŋāĻļā§āĻāĻŋāϤ āϧāϰ⧠āύā§āĻā§āĻž āϝāĻžāĻŦā§ āύāĻžāĨ¤
Cross-Broker Architecture-āĻāϰ āϏā§āĻŦāĻŋāϧāĻž
-
Strategy Logic āĻāĻ āĻāĻžā§āĻāĻžā§ āϰāĻžāĻāĻž āϝāĻžā§āĨ¤
-
Account-Specific Connection āĻāϞāĻžāĻĻāĻž āĻāϰāĻž āϝāĻžā§āĨ¤
-
Broker Configuration āĻĒā§āĻĨāĻāĻāĻžāĻŦā§ āĻĒāϰāĻŋāĻāĻžāϞāύāĻž āĻāϰāĻž āϝāĻžā§āĨ¤
-
Portfolio Monitoring Standardize āĻāϰāĻž āϝāĻžā§āĨ¤
-
āύāϤā§āύ Account āϝā§āĻ āĻāϰāĻžāϰ āϏāĻŽā§ Research Code āĻĒāϰāĻŋāĻŦāϰā§āϤāύā§āϰ āĻĒā§āϰā§ā§āĻāύ āĻāĻŽāϤ⧠āĻĒāĻžāϰā§āĨ¤
āϤāĻŦā§ 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-āĻ āĻā§ āĻā§ āĻĒā§āϰā§ā§āĻāύ?
-
Separate API Key
-
Separate Account Configuration
-
Account-Level Risk Limit
-
Independent Position Monitoring
-
Account-Level Execution Log
-
Failure Isolation
-
Portfolio Reconciliation
āĻāĻāĻāĻŋ 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-āĻāϰ āĻĻāĻžā§āĻŋāϤā§āĻŦ:
-
Execution Service āĻāĻžāϞ⧠āϰāĻžāĻāĻžāĨ¤
-
Failure āĻļāύāĻžāĻā§āϤ āĻāϰāĻžāĨ¤
-
Error Log āϤā§āϰāĻŋ āĻāϰāĻžāĨ¤
-
Recovery Delay āĻĒā§āϰā§ā§āĻ āĻāϰāĻžāĨ¤
-
āύāĻŋāϰā§āϧāĻžāϰāĻŋāϤ āϏā§āĻŽāĻžāϰ āĻŽāϧā§āϝ⧠Restart āĻāϰāĻžāĨ¤
-
āĻŦāĻžāϰāĻŦāĻžāϰ 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 āĻšāϤ⧠āĻĨāĻžāĻā§, āϤāĻžāĻšāϞā§:
-
Duplicate Request āϤā§āϰāĻŋ āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤
-
āĻāĻāĻ Signal āĻĒā§āύāϰāĻžā§ Process āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤
-
Resource Consumption āĻŦā§ā§ā§ āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤
-
Error Investigation āĻāĻ āĻŋāύ āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤
āϤāĻžāĻ Restart-āĻāϰ āĻāĻā§ State Recovery, Duplicate Prevention āĻāĻŦāĻ Account Reconciliation āĻāϰāĻž āĻĒā§āϰā§ā§āĻāύāĨ¤
⧍ā§Ļ. Production Quant Backbone: PoC āĻĨā§āĻā§ Institutional-Style Workflow
TradeMux-āĻāĻŋāϤā§āϤāĻŋāĻ Architecture-āĻā§ āϧāĻžāĻĒā§ āϧāĻžāĻĒā§ āĻŦā§ āĻāϰāĻž āϝāĻžā§āĨ¤
Stage 1: Proof of Concept
āĻĒā§āϰāĻĨāĻŽā§ Demo Account āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§:
-
Terminal Connection āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
-
EA Initialize āĻāϰā§āύāĨ¤
-
API Authentication āϝāĻžāĻāĻžāĻ āĻāϰā§āύāĨ¤
-
Account Information āĻĒā§ā§āύāĨ¤
-
Position Data āϏāĻāĻā§āϰāĻš āĻāϰā§āύāĨ¤
-
Historical Data Retrieval āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
āĻ āĻĒāϰā§āϝāĻžā§ā§ Live Order Execution āύā§, āĻŦāϰāĻ Integration Verification-āĻā§ āĻ āĻā§āϰāĻžāϧāĻŋāĻāĻžāϰ āĻĻāĻŋāύāĨ¤
Stage 2: Research Pipeline Integration
āĻāϰāĻĒāϰ Python Research Engine āϝā§āĻā§āϤ āĻāϰā§āύ:
-
Historical Data Processing
-
Feature Engineering
-
Model Inference
-
Signal Generation
-
Signal Logging
-
Out-of-Sample Evaluation
āĻāĻāĻžāύ⧠Research Signal āĻāĻŦāĻ Execution Signal āĻāϞāĻžāĻĻāĻž āĻāϰ⧠āϏāĻāϰāĻā§āώāĻŖ āĻāϰāĻž āĻāĻžāϞā§āĨ¤
Stage 3: Risk-Controlled Execution
Demo Environment-āĻ āϝāĻžāĻāĻžāĻ āĻāϰā§āύ:
-
Pre-Trade Risk Checks
-
Duplicate Position Prevention
-
Order Response Handling
-
Position Reconciliation
-
Emergency Workflow
-
Manual Stop Procedure
Stage 4: VPS Deployment
Production-Style Deployment-āĻāϰ āĻāύā§āϝ:
-
Stable VPS Environment
-
Terminal Availability Monitoring
-
Python Process Supervision
-
Secure Credential Management
-
Log Rotation
-
Network Monitoring
-
Backup āĻ Recovery Plan
āĻāϏāĻŦ āĻŦā§āϝāĻŦāϏā§āĻĨāĻž āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
Stage 5: Multi-Account Expansion
āĻāĻāĻžāϧāĻŋāĻ Account āϝā§āĻā§āϤ āĻāϰāĻžāϰ āĻāĻā§ āĻĒā§āϰāϤāĻŋāĻāĻŋ Account-āĻāϰ:
-
API Credential
-
Broker Symbol Mapping
-
Contract Specification
-
Capital Allocation
-
Risk Limit
-
Execution Health
āĻāϞāĻžāĻĻāĻžāĻāĻžāĻŦā§ āϝāĻžāĻāĻžāĻ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
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 āĻāϰāĻž āĻāĻāĻŋāϤ:
-
Client Initialization
-
Account Snapshot
-
Market Data Retrieval
-
Signal Generated
-
Risk Check Passed/Failed
-
Order Request
-
Order Response
-
Position Update
-
Kill Switch Event
-
Service Restart
API Key, Password āĻŦāĻž āĻ āύā§āϝ Secret āĻāĻāύ⧠Log āĻāϰāĻž āĻāĻāĻŋāϤ āύā§āĨ¤
⧍⧍. Troubleshooting: āϏāĻžāϧāĻžāϰāĻŖ āϏāĻŽāϏā§āϝāĻž āĻ āϏāĻŽāĻžāϧāĻžāύā§āϰ āĻĻāĻŋāĻāύāĻŋāϰā§āĻĻā§āĻļāύāĻž
āϏāĻŽāϏā§āϝāĻž ā§§: Python Client Connection Failure
āϏāĻŽā§āĻāĻžāĻŦā§āϝ āĻāĻžāϰāĻŖ:
-
Incorrect Server URL
-
Invalid API Key
-
Network Connectivity Issue
-
Service Unavailability
-
Timeout
āĻāϰāĻŖā§ā§:
-
Official Server URL āϝāĻžāĻāĻžāĻ āĻāϰā§āύāĨ¤
-
API Key āĻĒā§āύāϰāĻžā§ āϝāĻžāĻāĻžāĻ āĻāϰā§āύāĨ¤
-
Network Connectivity āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
-
Timeout āĻ Error Log āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
āϏāĻŽāϏā§āϝāĻž ⧍: MetaTrader EA āĻāĻžāĻ āĻāϰāĻā§ āύāĻž
āϏāĻŽā§āĻāĻžāĻŦā§āϝ āĻāĻžāϰāĻŖ:
-
EA Chart-āĻ Attach āĻāϰāĻž āĻšā§āύāĻŋāĨ¤
-
WebRequest Permission āĻĻā§āĻā§āĻž āĻšā§āύāĻŋāĨ¤
-
Incorrect Domain Configuration
-
Terminal Connection āϏāĻŽāϏā§āϝāĻžāĨ¤
-
Invalid API Configuration
āĻāϰāĻŖā§ā§:
-
Experts Tab āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
-
Journal Tab āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
-
WebRequest Domain āϝāĻžāĻāĻžāĻ āĻāϰā§āύāĨ¤
-
EA Input Configuration āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
āϏāĻŽāϏā§āϝāĻž ā§Š: OHLC Data āĻĒāĻžāĻā§āĻž āϝāĻžāĻā§āĻā§ āύāĻž
āϏāĻŽā§āĻāĻžāĻŦā§āϝ āĻāĻžāϰāĻŖ:
-
Incorrect Symbol
-
Unsupported Timeframe
-
Insufficient Historical Bars
-
Terminal Data Availability
-
Invalid Request Parameters
āĻāϰāĻŖā§ā§:
-
Broker-āĻāϰ Symbol Name āϝāĻžāĻāĻžāĻ āĻāϰā§āύāĨ¤
-
āύāĻŋāĻŦāύā§āϧ⧠āĻĻā§āĻāĻžāύ⧠Timeframe Format āĻ āύā§āϏāϰāĻŖ āĻāϰā§āύāĨ¤
-
Historical Data Availability āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
-
API Response āĻ Error Log āĻŦāĻŋāĻļā§āϞā§āώāĻŖ āĻāϰā§āύāĨ¤
āϏāĻŽāϏā§āϝāĻž ā§Ē: Order Request āϏāĻĢāϞ āĻšāϞā§āĻ Position āĻĻā§āĻāĻž āϝāĻžāĻā§āĻā§ āύāĻž
āϏāĻŽā§āĻāĻžāĻŦā§āϝ āĻāĻžāϰāĻŖ:
-
Execution Rejection
-
Broker Trading Restriction
-
Market Availability
-
Insufficient Margin
-
Symbol Specification Mismatch
āĻāϰāĻŖā§ā§:
-
Order Response āĻĒāϰā§āĻā§āώāĻž āĻāϰā§āύāĨ¤
-
Terminal-āĻāϰ Trade āĻ Journal Tab āĻĻā§āĻā§āύāĨ¤
-
Account State āĻĒā§āύāϰāĻžā§ āϏāĻāĻā§āϰāĻš āĻāϰā§āύāĨ¤
-
Position Reconciliation āĻāϰā§āύāĨ¤
āϏāĻŽāϏā§āϝāĻž ā§Ģ: Service āĻŦāĻžāϰāĻŦāĻžāϰ Restart āĻšāĻā§āĻā§
āϏāĻŽā§āĻāĻžāĻŦā§āϝ āĻāĻžāϰāĻŖ:
-
Repeated API Failure
-
Unhandled Exception
-
Invalid Configuration
-
Resource Exhaustion
-
Unstable Network
āĻāϰāĻŖā§ā§:
-
Error Classification āĻāϰā§āύāĨ¤
-
Restart Limit āĻĒā§āϰā§ā§āĻ āĻāϰā§āύāĨ¤
-
Exponential Backoff āĻŦāĻŋāĻŦā§āĻāύāĻž āĻāϰā§āύāĨ¤
-
Failure-āĻāϰ āĻāĻā§ āĻ āĻĒāϰ⧠Account State āϏāĻāϰāĻā§āώāĻŖ āĻāϰā§āύāĨ¤
ā§¨ā§Š. 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 āĻĻā§āĻāĻžāύ⧠āĻšā§ā§āĻā§āĨ¤
āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ āϏā§āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž āĻ āϝāĻžāĻāĻžāĻā§ā§āϰ āĻŦāĻŋāώā§
-
TradeMux SDK-āĻāϰ āϏāĻŽā§āĻĒā§āϰā§āĻŖ Installation Specification āĻāϞā§āĻāĻŋāϤ āύāĻŋāĻŦāύā§āϧ⧠āύā§āĻāĨ¤
-
āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ Package Name āĻ Server URL āĻāϞāĻžāĻĻāĻž Documentation āĻĨā§āĻā§ āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
-
API Availability āĻāĻŦāĻ Service Uptime āϏāĻŽā§āĻĒāϰā§āĻā§ āϏā§āĻŦāĻžāϧā§āύ āϝāĻžāĻāĻžāĻāĻā§āϤ āϤāĻĨā§āϝ āĻāĻāĻžāύ⧠āύā§āĻāĨ¤
-
Cross-Broker Normalization āϏāĻŦ Contract Specification āĻŦāĻž Execution Condition āϏāĻŽāĻžāύ āĻāϰ⧠āύāĻžāĨ¤
-
Network āĻ Broker Failure-āĻāϰ āĻā§āώā§āϤā§āϰ⧠Emergency Workflow āĻŦā§āϝāϰā§āĻĨ āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤
-
Machine Learning Model-āĻāϰ Accuracy āĻŦāĻž Profitability TradeMux āĻĻā§āĻŦāĻžāϰāĻž āύāĻŋāĻļā§āĻāĻŋāϤ āĻšā§ āύāĻžāĨ¤
-
Live Trading-āĻāϰ āĻāĻā§ Demo Validation, Backtesting āĻāĻŦāĻ Out-of-Sample Evaluation āĻĒā§āϰā§ā§āĻāύāĨ¤
-
API Key āĻ Account Credential āϏā§āϰāĻā§āώāĻŋāϤ āϰāĻžāĻāĻž āĻ āĻĒāϰāĻŋāĻšāĻžāϰā§āϝāĨ¤
⧍ā§Ē. 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āĨ¤
āĻāĻāĻŋ āĻŦāĻŋāĻļā§āώāĻāĻžāĻŦā§ āĻāĻĒāϝā§āĻā§ āĻšāϤ⧠āĻĒāĻžāϰā§:
-
Python-Based Quant Research Team
-
Algorithmic Trading Developers
-
Machine Learning Engineers
-
Multi-Broker Trading Infrastructure Developers
-
Portfolio Monitoring System Developers
-
MetaTrader Integration Engineers
-
Institutional-Style Execution Service Builders
āϝāĻžāϰāĻž 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.

