Monte Carlo Risk Simulation — គំរូលទ្ធផលផលប័ត្រហិរញ្ញវត្ថុ

Monte Carlo simulations អនុញ្ញាតឱ្យអ្នកធ្វើគំរូផ្លូវអនាគតដែលអាចកើតមានចំនួន 100,000+ សម្រាប់ផលប័ត្ររបស់អ្នក ដោយវាស់សាកស្ទើរហានិភ័យដូចជា Value at Risk (VaR) និងការខាតបង់ដែលរំពឹងទុក។ ជំនួសឱ្យការសន្មតលទ្ធផលតែមួយ អ្នកនឹងឃើញការចែកចាយនៃលទ្ធផលដែលអាចកើតមាន។

ឧទាហរណ៍៖ ដំណើរការការធ្វើគំរូ 100k សម្រាប់យុទ្ធសាស្ត្រប្រតិបត្តិការរបស់អ្នក។ អ្នកនឹងឃើញ៖ 68% នៃលទ្ធផលរកបានចំណេញ $10-$50, 25% ខាតបង់ $10-$30, 5% ខាតបង់ $50-$200, និង 2% រកបានចំណេញ $100+។ ឥឡូវនេះអ្នកយល់ពីប្រវត្តិហានិភ័យរបស់អ្នក។

Basic Geometric Brownian Motion (GBM)

គំរូតម្លៃអនាគតជាដំណើរការដោយចៃដន្យដោយមានការរីកចម្រើន និងភាពមិនស្ថិតស្ថេរ៖

Python — Monte Carlo price paths
import numpy as np
def simulate_price_paths(S0, mu, sigma, T, dt, n_sims=10000):
# S0: តម្លៃបច្ចុប្បន្ន, mu: ការរីកចម្រើន, sigma: ភាពមិនស្ថិតស្ថេរ
# T: រយៈពេល (ថ្ងៃ), dt: ជំហានពេលវេលា, n_sims: ចំនួនគំរូ
steps = int(T / dt)
paths = np.zeros((n_sims, steps))
paths[:, 0] = S0
for i in range(1, steps):
# dS = mu*S*dt + sigma*S*sqrt(dt)*Z
Z = np.random.normal(0, 1, n_sims)
dS = mu * paths[:, i-1] * dt + sigma * paths[:, i-1] * np.sqrt(dt) * Z
paths[:, i] = paths[:, i-1] + dS
return paths

Portfolio Risk Metrics

Value at Risk (VaR)

ការខាតបង់ដែលអ្នកនឹងជាប់លើសក្នុងស្ថានភាព 5% ប៉ុណ្ណោះ (ជំនឿទុកចិត្ត 95%)៖

Python — Calculate VaR
def calculate_var(simulations, confidence=0.95):
pnl = simulations[:, -1] - simulations[:, 0]
var = np.percentile(pnl, (1 - confidence) * 100)
return var # ឧ. -$2,340

Expected Shortfall (CVaR)

ការខាតបង់ជាមធ្យមក្នុងស្ថានភាពអាក្រក់បំផុត 5%៖

Python — Calculate CVaR
def calculate_cvar(simulations, confidence=0.95):
pnl = simulations[:, -1] - simulations[:, 0]
var_threshold = np.percentile(pnl, (1 - confidence) * 100)
worst_5_pct = pnl[pnl <= var_threshold]
cvar = np.mean(worst_5_pct)
return cvar # ឧ. -$3,800 (អាក្រក់ជាង VaR)

Strategy-Specific Simulation

ធ្វើគំរូច្បាប់ប្រតិបត្តិការជាក់ស្តែងរបស់អ្នក មិនមែនគ្រាន់តែផ្លូវតម្លៃ៖

Python — Strategy Monte Carlo
def simulate_strategy(capital, win_rate, avg_win, avg_loss, trades_per_day=10, days=30, n_sims=10000):
results = np.zeros(n_sims)
for sim in range(n_sims):
equity = capital
n_trades = trades_per_day * days
for _ in range(n_trades):
if np.random.rand() < win_rate:
pnl = np.random.normal(avg_win, avg_win * 0.2)
else:
pnl = -np.random.normal(avg_loss, avg_loss * 0.2)
equity += pnl
if equity < capital * 0.5:
break # បញ្ឈប់នៅពេលខាតបង់ 50%
results[sim] = equity
return results

Stress Testing with Smart Money Signals

គំរូស្ថានភាពអាក្រក់បំផុតនៅពេលជំនឿ Smart Money ធ្លាក់ចុះ៖

Python — Stress test scenarios
def stress_test_scenarios(base_win_rate):
# Scenario 1: លក្ខខណ្ឌធម្មតា (ជំនឿទុកចិត្តខ្ពស់)
scenario_normal = simulate_strategy(10000, win_rate=base_win_rate)
# Scenario 2: សញ្ញាធ្លាក់ចុះ (ជំនឿទុកចិត្តមធ្យម)
scenario_medium = simulate_strategy(10000, win_rate=base_win_rate * 0.95)
# Scenario 3: ការបរាជ័យ (លក្ខខណ្ឌ VETO)
scenario_veto = simulate_strategy(10000, win_rate=0.45) # គុណវិបត្តិ
return {
'normal': {'var': np.percentile(scenario_normal, 5), 'mean': np.mean(scenario_normal)},
'medium': {'var': np.percentile(scenario_medium, 5), 'mean': np.mean(scenario_medium)},
'veto': {'var': np.percentile(scenario_veto, 5), 'mean': np.mean(scenario_veto)}
}

Interpretation

ពីការធ្វើគំរូ 10k អ្នកនឹងដឹង៖

សាកល្បងយុទ្ធសាស្ត្រជាមួយសញ្ញា Smart Money

យល់ពីហានិភ័យផលប័ត្រក្រោមលក្ខខណ្ឌ Smart Money ធម្មតា ធ្លាក់ចុះ និង VETO។ API របស់យើងផ្តល់សញ្ញា ហើយ Monte Carlo ធ្វើគំរូលទ្ធផល។

Risk Model Today →