মন্টে কার্লো রিস্ক সিমুলেশন — পোর্টফোলিও আউটকাম মডেলিং

মন্টে কার্লো সিমুলেশন আপনাকে আপনার পোর্টফোলিওর 100,000+ সম্ভাব্য ভবিষ্যৎ পথ মডেল করতে দেয়, যেমন Value at Risk (VaR) এবং expected shortfall এর মতো রিস্ক মেট্রিক্স পরিমাপ করে। একটি একক আউটকাম ধরে নেওয়ার পরিবর্তে, আপনি সম্ভাবনার বণ্টন দেখতে পান।

উদাহরণ: আপনার ট্রেডিং স্ট্র্যাটেজির 100k সিমুলেশন চালান। আপনি দেখবেন: 68% আউটকাম $10-$50 লাভ করে, 25% $10-$30 হারায়, 5% $50-$200 হারায়, এবং 2% $100+ লাভ করে। এখন আপনি আপনার রিস্ক প্রোফাইল বুঝতে পারেন।

বেসিক জিওমেট্রিক ব্রাউনিয়ান মোশন (GBM)

ভবিষ্যৎ মূল্যকে ড্রিফ্ট এবং ভোলাটিলিটি সহ র্যান্ডম ওয়াক হিসাবে মডেল করুন:

Python — মন্টে কার্লো প্রাইস পাথ
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

পোর্টফোলিও রিস্ক মেট্রিক্স

Value at Risk (VaR)

যে ক্ষতি আপনি শুধুমাত্র 5% পরিস্থিতিতে অতিক্রম করবেন (95% আত্মবিশ্বাস):

Python — 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 — 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 এর চেয়ে খারাপ)

স্ট্র্যাটেজি-স্পেসিফিক সিমুলেশন

শুধুমাত্র প্রাইস পাথ নয়, আপনার প্রকৃত ট্রেডিং নিয়ম সিমুলেট করুন:

Python — স্ট্র্যাটেজি মন্টে কার্লো
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

Smart Money সিগন্যাল সহ স্ট্রেস টেস্টিং

Smart Money আত্মবিশ্বাস কমে গেলে সবচেয়ে খারাপ পরিস্থিতি মডেল করুন:

Python — স্ট্রেস টেস্ট পরিস্থিতি
def stress_test_scenarios(base_win_rate):
# পরিস্থিতি 1: সাধারণ অবস্থা (HIGH আত্মবিশ্বাস)
scenario_normal = simulate_strategy(10000, win_rate=base_win_rate)
# পরিস্থিতি 2: অবনতি সিগন্যাল (MEDIUM আত্মবিশ্বাস)
scenario_medium = simulate_strategy(10000, win_rate=base_win_rate * 0.95)
# পরিস্থিতি 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)}
}

ব্যাখ্যা

10k সিমুলেশন থেকে, আপনি শিখবেন:

Smart Money সিগন্যাল সহ স্ট্র্যাটেজি স্ট্রেস-টেস্ট করুন

সাধারণ, অবনতি, এবং VETO Smart Money অবস্থায় পোর্টফোলিও রিস্ক বুঝুন। আমাদের API আপনাকে সিগন্যাল দেয়; মন্টে কার্লো আউটকাম মডেল করে।

Risk Model Today →