آموزش ارز دیجیتال

روش مونت کارلو چیست؟ کاربرد شبیه‌سازی مونت کارلو در بازارهای مالی

فرض کنید یک استراتژی معاملاتی را روی داده‌های گذشته آزمایش کرده‌اید و نتیجه امیدوارکننده است: ۲۰۰ معامله، ۴۰ درصد سود و حداکثر افت سرمایه ۲۲ درصد. حالا با خیال راحت تصمیم می‌گیرید با پول واقعی معامله کنید، چون فکر می‌کنید بدترین حالت را دیده‌اید. اما آن ۲۲ درصد فقط یکی از هزاران حالتی است که می‌توانست اتفاق بیفتد. اگر همان معاملات با ترتیب دیگری پشت سر هم می‌آمدند، افت سرمایه شما می‌توانست از ۳۰ درصد هم عبور کند.

این همان نقطه کوری است که روش مونت کارلو (Monte Carlo) برای دیدن آن ساخته شده است. در این راهنما از سکه دیجیتال یاد می‌گیرید این روش چطور کار می‌کند، چطور با آن ریسک واقعی استراتژی خود و مسیرهای احتمالی قیمت را بسنجید و آن را در اکسل یا پایتون اجرا کنید. مهم‌تر از همه، می‌فهمید این روش چه کاری از دستش برنمی‌آید.

روش مونت کارلو چیست؟

روش مونت کارلو یعنی حل یک مسئله با تکرار تعداد زیادی آزمایش تصادفی و بررسی نتایج آن‌ها. به جای اینکه برای یک مسئله نامطمئن فقط یک جواب حساب کنید، هزاران بار آن را با ورودی‌های تصادفی اجرا می‌کنید و می‌بینید نتایج در چه محدوده‌ای پخش می‌شوند. خروجی این روش یک عدد نیست، بلکه تصویری از همه نتایج ممکن و احتمال هر کدام است.

تفاوت این روش با محاسبه معمولی را با یک مثال ببینید. مدل قطعی (مدلی که با ورودی ثابت همیشه یک جواب ثابت می‌دهد) می‌گوید اگر بیت‌کوین سالانه ۳۰ درصد بازده داشته باشد، سرمایه شما سال بعد ۱.۳ برابر می‌شود. اما مدل احتمالاتی می‌پرسد اگر این بازده هر روز با نوسان همراه باشد، سرمایه شما در بدترین ۵ درصد حالت‌ها و بهترین ۵ درصد حالت‌ها کجا خواهد بود. روش مونت کارلو به سوال دوم جواب می‌دهد.

چرا اسم این روش مونت کارلو است؟

اسم این روش از کازینوی معروف مونت کارلو در موناکو گرفته شده است، چون مثل بازی‌هایی مانند رولت و تاس، شانس و نتایج تصادفی در قلب آن قرار دارد. انتخاب این اسم به نوعی شوخی دانشمندانی بود که روی آن کار می‌کردند، چون این روش را با تکرار هزاران «بازی» تصادفی پیش می‌بردند.

انریکو فرمی، فیزیکدان ایتالیایی، در دهه ۱۹۳۰ از روش‌های نمونه‌گیری تصادفی برای حل مسائل فیزیک استفاده می‌کرد. اما شکل امروزی و نام این روش در دهه ۱۹۴۰ و در جریان پروژه منهتن (پروژه آمریکا برای ساخت اولین سلاح هسته‌ای) شکل گرفت. استانیسلاو اولام، ریاضیدان لهستانی‌تبار، ایده آن را مطرح کرد و جان فون نویمان به او کمک کرد تا آن را روی اولین کامپیوترها اجرا کند.

تاریخچه روش مونت کارلو در آزمایشگاه لس آلاموس

روش مونت کارلو چطور کار می‌کند؟

منطق این روش ساده است. شما یک مدل دارید که بعضی ورودی‌هایش نامطمئن هستند، مثل بازده روزانه یک دارایی. برای هر ورودی نامطمئن یک مقدار تصادفی انتخاب می‌کنید، مدل را اجرا می‌کنید و نتیجه را ثبت می‌کنید. این کار را هزاران بار تکرار می‌کنید و در پایان، به جای یک جواب، توزیعی از جواب‌ها دارید.

قدرت الگوریتم مونت کارلو از همین تکرار می‌آید. یک آزمایش تصادفی به تنهایی چیزی به شما نمی‌گوید، اما ده هزار آزمایش تصادفی الگوی پنهان مسئله را آشکار می‌کنند. دو بخش بعدی دلیل این اتفاق و یک مثال ساده از آن را نشان می‌دهند.

قانون اعداد بزرگ؛ چرا تکرار بیشتر جواب دقیق‌تری می‌دهد

اگر یک تاس را ۶ بار بیندازید، ممکن است عدد ۴ را سه بار ببینید و عدد ۲ را اصلا نبینید. اما اگر آن را ۱۰ هزار بار بیندازید، هر عدد در حدود یک‌ششم پرتاب‌ها ظاهر می‌شود. قانون اعداد بزرگ (قاعده‌ای در آمار که می‌گوید با افزایش تعداد آزمایش، میانگین نتایج به مقدار واقعی نزدیک‌تر می‌شود) پایه روش مونت کارلو است.

اما یک نکته مهم وجود دارد که بیشتر توضیح‌ها از آن عبور می‌کنند. خطای تخمین در روش مونت کارلو با ریشه دوم تعداد تکرارها کم می‌شود، نه با خود تعداد تکرارها. یعنی اگر بخواهید خطای نتیجه را نصف کنید، باید تعداد اجراها را چهار برابر کنید. به همین دلیل، دقیق‌تر کردن نتایج از یک حد به بعد زمان و قدرت محاسباتی زیادی می‌خواهد.

یک مثال ساده: تخمین عدد پی با نقاط تصادفی

یک مربع به ضلع ۱ در نظر بگیرید و داخل آن یک ربع دایره به شعاع ۱ بکشید. مساحت ربع دایره π/4 و مساحت مربع ۱ است. حالا هزاران نقطه را به‌طور تصادفی داخل مربع بیندازید. نسبت نقاطی که داخل ربع دایره می‌افتند به کل نقاط، حدود π/4 می‌شود. پس اگر این نسبت را در ۴ ضرب کنید، به تخمینی از عدد پی می‌رسید.

تخمین عدد پی با روش مونت کارلو در سه سطح ۱۰۰، ۱۰۰۰ و ۱۰۰ هزار نقطه تصادفی

نتیجه یک اجرای واقعی این آزمایش را ببینید:

تعداد نقاط تصادفیتخمین عدد پیفاصله با مقدار واقعی (۳.۱۴۱۶)
۱۰۰۲.۹۶حدود ۰.۱۸
۱۰۰۰۳.۱۹۶حدود ۰.۰۵
۱۰۰ هزار۳.۱۴۰۸حدود ۰.۰۰۰۸

این مثال هیچ ربطی به بازار ندارد، اما کل منطق روش را نشان می‌دهد. با ۱۰۰ نقطه، تخمین شما فاصله زیادی با جواب دارد و با ۱۰۰ هزار نقطه، تا سه رقم اعشار درست است. در بازار هم همین اتفاق می‌افتد: هرچه سناریوهای بیشتری بسازید، تصویر دقیق‌تری از محدوده نتایج به دست می‌آورید.

مراحل انجام شبیه‌سازی مونت کارلو

هر شبیه‌سازی مونت کارلو، چه برای تخمین عدد پی و چه برای سنجش ریسک یک پرتفوی، از پنج مرحله تشکیل می‌شود:

  • مدل را بسازید: مشخص کنید خروجی شما چطور از ورودی‌ها محاسبه می‌شود، مثلا قیمت فردا از قیمت امروز و بازده روزانه.
  • ورودی‌های نامطمئن را مشخص کنید: ببینید کدام متغیرها را نمی‌توانید با قطعیت بدانید، مثل بازده روزانه یا نرخ برد استراتژی.
  • برای هر ورودی یک توزیع احتمال انتخاب کنید: تعیین کنید مقادیر تصادفی از چه الگویی پیروی می‌کنند.
  • مدل را هزاران بار اجرا کنید: در هر اجرا مقادیر تصادفی تازه بسازید و نتیجه را ثبت کنید.
  • نتایج را تحلیل کنید: ببینید خروجی‌ها چطور پخش شده‌اند و صدک‌های مهم کجا قرار دارند.

ساختار این مراحل ساده است، اما کیفیت نتیجه به یک مرحله بیش از بقیه وابسته است. اگر توزیع احتمال را اشتباه انتخاب کنید، بقیه مراحل هر قدر هم دقیق اجرا شوند، شما را به نتیجه اشتباه می‌رسانند.

انتخاب توزیع احتمال؛ مهم‌ترین تصمیم شبیه‌سازی

توزیع احتمال (الگویی که نشان می‌دهد هر مقدار با چه احتمالی رخ می‌دهد) شکل همه سناریوهای شما را تعیین می‌کند. توزیع نرمال یا زنگوله‌ای رایج‌ترین انتخاب است و برای بازده کوتاه‌مدت بسیاری از دارایی‌ها تقریب قابل قبولی می‌دهد. اما خود قیمت دارایی نمی‌تواند منفی شود، به همین دلیل در مدل‌های رایج قیمت از توزیع لگ‌نرمال (توزیعی که فقط مقادیر مثبت دارد و دم سمت راست آن کشیده‌تر است) پیروی می‌کند.

مشکل اصلی در بازارهایی مثل کریپتو این است که حرکت‌های شدید خیلی بیشتر از چیزی رخ می‌دهند که توزیع نرمال پیش‌بینی می‌کند. به این ویژگی دم پهن (Fat Tail) می‌گویند. اگر برای بیت‌کوین از توزیع نرمال ساده استفاده کنید، شبیه‌سازی شما احتمال سقوط‌های بزرگ را کمتر از واقعیت نشان می‌دهد و ریسک را دست کم می‌گیرد.

کاربرد روش مونت کارلو برای معامله‌گران

بیشتر توضیح‌ها درباره این روش به کاربردهای نهادی مثل قیمت‌گذاری اوراق یا ارزش‌گذاری شرکت‌ها می‌پردازند. اما شما به عنوان یک معامله‌گر فردی هم می‌توانید از همین ابزار برای جواب دادن به سوال‌های بسیار عملی استفاده کنید: استراتژی من واقعا چقدر ریسک دارد، چقدر احتمال دارد حسابم نصف شود و قیمت دارایی مورد نظرم در چه محدوده‌ای ممکن است حرکت کند.

سنجش پایداری استراتژی با جابه‌جایی ترتیب معاملات

بک‌تست (آزمایش یک استراتژی روی داده‌های گذشته) فقط یک ترتیب از معاملات را نشان می‌دهد، یعنی همان ترتیبی که در گذشته رخ داده است. اما هیچ دلیلی ندارد که در آینده معاملات سودده و زیان‌ده با همان ترتیب بیایند. ممکن است پنج معامله زیان‌ده پشت سر هم داشته باشید، در حالی که در بک‌تست هرگز بیش از دو زیان پیاپی ندیده بودید.

روش مونت کارلو این مشکل را با بازچینی تصادفی (Resampling) حل می‌کند. شما همان فهرست معاملات بک‌تست را برمی‌دارید، ترتیب آن‌ها را هزاران بار به‌طور تصادفی جابه‌جا می‌کنید و هر بار منحنی سرمایه جدیدی می‌سازید. نتیجه هزاران منحنی سرمایه است که همه از همان معاملات ساخته شده‌اند، اما مسیرهای بسیار متفاوتی را طی می‌کنند.

تخمین بدترین افت سرمایه (Max Drawdown)

حداکثر افت سرمایه یا Max Drawdown (بزرگ‌ترین کاهش سرمایه از یک سقف تا کف بعدی) یکی از مهم‌ترین معیارهای ریسک است. در یک مثال فرضی، استراتژی‌ای با ۲۰۰ معامله، نرخ برد ۴۵ درصد، سود ۳ درصدی در معاملات برنده و زیان ۲ درصدی در معاملات بازنده را در نظر بگیرید. بک‌تست این استراتژی حدود ۴۰ درصد سود و حداکثر افت ۲۲ درصدی نشان داد. وقتی ترتیب همین معاملات ۱۰ هزار بار جابه‌جا شد، نتیجه این بود:

صدکحداکثر افت سرمایه
۵ درصد بهترین حالت‌هاحدود ۱۶ درصد
میانهحدود ۲۳ درصد
۵ درصد بدترین حالت‌هابیش از ۳۵ درصد
شبیه‌سازی مونت کارلو افت سرمایه؛ منحنی بک‌تست با افت ۲۲ درصد در برابر ۱۰ هزار مسیر بازچینی‌شده با افت تا ۳۵ درصد

یعنی اگر حساب خود را طوری تنظیم کرده‌اید که حداکثر ۲۵ درصد افت را تحمل کند، در بخش قابل توجهی از سناریوها از این حد عبور می‌کنید. عدد بک‌تست اشتباه نبود، اما فقط یکی از مسیرهای ممکن را نشان می‌داد. با این روش، به جای «بدترین افت تاریخی»، «بدترین افت محتمل» را برنامه‌ریزی می‌کنید.

تخمین ریسک ورشکستگی

ریسک ورشکستگی (Risk of Ruin) یعنی احتمال اینکه حساب شما به سطحی از زیان برسد که دیگر نتوانید یا نخواهید ادامه دهید. فرض کنید این سطح را از دست رفتن نیمی از سرمایه اولیه تعریف کرده‌اید. در یک شبیه‌سازی فرضی با نرخ برد ۴۵ درصد و نسبت سود به زیان ۱.۵ در ۲۰۰ معامله، اگر در هر معامله ۲ درصد سرمایه را ریسک کنید، احتمال رسیدن به این سطح حدود ۰.۲ درصد است.

اما اگر با همان استراتژی در هر معامله ۵ درصد ریسک کنید، این احتمال به حدود ۱۴ درصد می‌رسد. یعنی از هر هفت مسیر حدود یکی، یکی به نصف شدن سرمایه ختم می‌شود. استراتژی تغییری نکرده است، فقط اندازه ریسک هر معامله بالا رفته است. اگر می‌خواهید ریسک هر معامله را درست تعیین کنید، مقاله مدیریت سرمایه سکه دیجیتال را بخوانید.

شبیه‌سازی مسیرهای احتمالی قیمت بیت‌کوین یا طلا

برای شبیه‌سازی قیمت، رایج‌ترین مدل حرکت براونی هندسی یا GBM (مدلی که فرض می‌کند بازده دارایی در هر لحظه از یک روند ثابت به اضافه یک نوسان تصادفی تشکیل شده است) است. شما میانگین بازده سالانه و نوسان سالانه را تعیین می‌کنید و مدل هر روز قیمت را با یک تکان تصادفی جلو می‌برد. با تکرار این کار برای ۱۰ هزار مسیر، نمودار بادبزنی (Fan Chart) به دست می‌آید که محدوده‌های احتمالی قیمت را نشان می‌دهد.

نمودار بادبزنی شبیه‌سازی مونت کارلو؛ محدوده‌های احتمالی قیمت در یک سال با نوارهای صدک، میانه و میانگین

نتیجه یک شبیه‌سازی فرضی برای دارایی‌ای با قیمت فعلی ۱۰۰ هزار دلار، بازده مورد انتظار سالانه ۳۰ درصد و نوسان سالانه ۶۰ درصد، بعد از یک سال این بود:

صدکقیمت بعد از یک سال
۵حدود ۴۲ هزار دلار
۲۵حدود ۷۶ هزار دلار
۵۰ (میانه)حدود ۱۱۳ هزار دلار
۷۵حدود ۱۷۰ هزار دلار
۹۵حدود ۳۰۸ هزار دلار

در این مثال دو نکته مهم وجود دارد. اول اینکه با وجود بازده مورد انتظار مثبت ۳۰ درصدی، حدود ۴۱ درصد مسیرها پایین‌تر از قیمت اولیه تمام شدند. دوم اینکه این اعداد پیش‌بینی قیمت نیستند و فقط نشان می‌دهند اگر فرض‌های بازده و نوسان درست باشند، قیمت در چه محدوده‌هایی ممکن است قرار بگیرد.

محاسبه ارزش در معرض ریسک (VaR) پرتفوی

ارزش در معرض ریسک یا VaR (حداکثر زیانی که در یک دوره مشخص و با یک سطح اطمینان مشخص انتظار دارید) یکی از رایج‌ترین معیارهای ریسک در نهادهای مالی است. برای مثال، اگر VaR یک‌روزه پرتفوی شما با اطمینان ۹۵ درصد برابر ۴ میلیون تومان باشد، یعنی در ۹۵ درصد روزها زیان شما از ۴ میلیون تومان بیشتر نمی‌شود.

با روش مونت کارلو، شما هزاران سناریوی تصادفی برای بازده دارایی‌های پرتفوی می‌سازید و ارزش پرتفوی را در هر سناریو حساب می‌کنید. بعد زیان‌ها را مرتب می‌کنید و صدک پنجم را به عنوان VaR برمی‌دارید. باید دقت کنید که VaR فقط مرز ۹۵ درصد را نشان می‌دهد و چیزی درباره اندازه زیان در آن ۵ درصد باقی‌مانده نمی‌گوید.

کاربردهای مونت کارلو در حوزه‌های دیگر

روش مونت کارلو فقط ابزار بازارهای مالی نیست. هر جا که یک تصمیم به چند متغیر نامطمئن وابسته باشد، این روش کاربرد دارد:

حوزهمتغیر نامطمئنخروجی شبیه‌سازی
قیمت‌گذاری اختیار معاملهمسیر قیمت دارایی پایهارزش منصفانه قرارداد
مدیریت پروژهمدت انجام هر فعالیتاحتمال تمام شدن پروژه تا یک تاریخ مشخص
مهندسیتنش و فرسودگی قطعاتنرخ خرابی محصول
کسب‌وکارنرخ فروش و هزینه‌هااحتمال سودده بودن یک طرح
فیزیکرفتار ذراتتوزیع انرژی یا تابش

در قیمت‌گذاری اختیار معامله (قراردادی که حق خرید یا فروش یک دارایی را در آینده با قیمت مشخص می‌دهد)، این روش برای قراردادهای اروپایی که فقط در تاریخ سررسید قابل اعمال هستند بسیار خوب کار می‌کند. برای قراردادهای آمریکایی که در هر زمان قابل اعمال هستند، به نسخه‌های پیچیده‌تری از روش نیاز است. همین تنوع کاربرد نشان می‌دهد مونت کارلو یک ابزار عمومی برای کار با عدم قطعیت است، نه یک تکنیک مخصوص یک بازار.

اجرای شبیه‌سازی مونت کارلو در اکسل و پایتون

برای استفاده از این روش لازم نیست نرم‌افزار گران یا مهارت برنامه‌نویسی پیشرفته داشته باشید. یک شبیه‌سازی ساده قیمت را می‌توانید در چند دقیقه در اکسل بسازید و اگر با پایتون آشنا باشید، همان کار را با سرعت و مقیاس بیشتری انجام دهید.

شبیه‌سازی ساده قیمت در اکسل

در اکسل، قیمت هر روز را از قیمت روز قبل و یک عدد تصادفی می‌سازید. برای این کار از دو تابع استفاده می‌کنید: RAND() که یک عدد تصادفی بین صفر و یک تولید می‌کند و NORM.S.INV() که این عدد را به یک مقدار تصادفی با توزیع نرمال تبدیل می‌کند. مراحل کار این است:

  • در خانه A1 قیمت اولیه را وارد کنید، مثلا ۱۰۰۰۰۰.
  • در خانه A2 این فرمول را بنویسید و آن را تا ۳۶۵ ردیف پایین بکشید:
    =A1*EXP((0.3-0.6^2/2)*(1/365)+0.6*SQRT(1/365)*NORM.S.INV(RAND()))
  • در این فرمول، عدد ۰.۳ بازده سالانه و ۰.۶ نوسان سالانه است. این دو را با فرض‌های خودتان جایگزین کنید.
  • این ستون یک مسیر قیمت است. ستون را به چند صد ستون دیگر کپی کنید تا چند صد مسیر داشته باشید و از ردیف آخر صدک‌ها را با تابع PERCENTILE حساب کنید.

هر بار که کلید F9 را بزنید، اکسل همه اعداد تصادفی را دوباره می‌سازد و مسیرهای تازه‌ای می‌بینید. برای دارایی‌هایی که آخر هفته هم معامله می‌شوند، مثل کریپتو، از ۱/۳۶۵ استفاده کنید و برای بازارهایی که تعطیلی دارند، از ۱/۲۵۲. اگر مسیرها را روی یک نمودار خطی رسم کنید، همان نمودار بادبزنی بخش قبل را می‌سازید.

نسخه کوتاه با پایتون

اکسل برای چند صد مسیر کافی است، اما برای ۱۰ هزار مسیر کند می‌شود. همین شبیه‌سازی در پایتون با کتابخانه numpy (کتابخانه محاسبات عددی پایتون) در چند خط و در کسری از ثانیه اجرا می‌شود:

python

import numpy as np

price0 = 100000
mu, sigma = 0.30, 0.60
days, runs = 365, 10000
dt = 1 / 365

z = np.random.standard_normal((runs, days))
returns = (mu - sigma**2 / 2) * dt + sigma * np.sqrt(dt) * z
paths = price0 * np.exp(np.cumsum(returns, axis=1))

final = paths[:, -1]
print(np.percentile(final, [5, 50, 95]))

خط z یک جدول ۱۰ هزار در ۳۶۵ از اعداد تصادفی نرمال می‌سازد که هر ردیف آن یک مسیر است. خط returns بازده لگاریتمی هر روز را با همان منطق فرمول اکسل محاسبه می‌کند و خط paths با جمع کردن این بازده‌ها، مسیر قیمت را می‌سازد. خط آخر هم صدک‌های ۵، ۵۰ و ۹۵ قیمت پایانی را چاپ می‌کند.

نتایج مونت کارلو را چطور تفسیر کنیم؟

رایج‌ترین اشتباه در تفسیر نتایج این است که فقط به میانگین نگاه کنید. در شبیه‌سازی قیمت بخش قبل، میانگین قیمت پایانی حدود ۱۳۷ هزار دلار بود، در حالی که میانه حدود ۱۱۳ هزار دلار بود. دلیل این تفاوت چند مسیر بسیار صعودی است که میانگین را بالا می‌کشند. اگر فقط میانگین را ببینید، تصور خوش‌بینانه‌تری از چیزی خواهید داشت که در بیشتر سناریوها رخ می‌دهد.

به همین دلیل، به جای میانگین به صدک‌ها نگاه کنید:

  • صدک ۵ را به عنوان «حالت بد اما محتمل» در نظر بگیرید و تصمیم‌هایتان را طوری بگیرید که در آن حالت هم قابل تحمل باشند.
  • میانه را به عنوان نتیجه‌ای در نظر بگیرید که نیمی از سناریوها بالاتر و نیمی پایین‌تر از آن قرار دارند.
  • صدک ۹۵ را به عنوان «حالت خوب اما غیرعادی» ببینید و برنامه خود را بر اساس آن نچینید.

برخلاف آنچه در برخی منابع آمده است، نتایج مونت کارلو همیشه منحنی زنگوله‌ای متقارن نمی‌سازند. شکل خروجی به مدل شما بستگی دارد. در مثال قیمت، توزیع قیمت پایانی به سمت راست کشیده بود و در مثال افت سرمایه، دم توزیع به سمت زیان‌های بزرگ کشیده می‌شد.

محدودیت‌های روش مونت کارلو؛ چرا آینده را پیش‌بینی نمی‌کند

روش مونت کارلو ابزار قدرتمندی است، اما یک چیز را نمی‌تواند به شما بدهد: پیش‌بینی آینده. این روش فقط نشان می‌دهد که اگر فرض‌های شما درست باشند، نتایج در چه محدوده‌ای قرار می‌گیرند. کیفیت هر شبیه‌سازی دقیقا به اندازه کیفیت همین فرض‌هاست.

کیفیت فرضیات؛ ورودی اشتباه، خروجی اشتباه

در دنیای مدل‌سازی یک اصل قدیمی وجود دارد که به آن GIGO می‌گویند (Garbage In, Garbage Out، یعنی ورودی بی‌کیفیت، خروجی بی‌کیفیت می‌دهد). اگر نوسان یک دارایی را ۴۰ درصد فرض کنید در حالی که نوسان واقعی آن ۸۰ درصد است، ده هزار شبیه‌سازی هم همان اشتباه را ده هزار بار تکرار می‌کند. در این حالت تعداد زیاد اجراها فقط به شما حس دقت کاذب می‌دهد.

مشکل دیگر این است که بیشتر فرض‌ها از داده‌های گذشته می‌آیند. اگر بازار در دوره‌ای آرام بوده باشد و شما میانگین و نوسان را از همان دوره بگیرید، شبیه‌سازی شما آینده را هم آرام تصور می‌کند. هر وقت شرایط بازار تغییر کرد، فرض‌ها را دوباره بررسی کنید.

رویدادهای نادر و دم‌های پهن بازار

بیشتر مدل‌های ساده مونت کارلو بر توزیع نرمال تکیه دارند و این توزیع احتمال حرکت‌های بسیار شدید را خیلی کم نشان می‌دهد. اما بازارهای واقعی، به خصوص بازار کریپتو، بارها ریزش‌ها و جهش‌هایی را تجربه کرده‌اند که بر اساس توزیع نرمال نزدیک به غیرممکن به نظر می‌رسیدند.

شبیه‌سازی مونت کارلو فقط سناریوهایی را نشان می‌دهد که مدل شما اجازه وقوعشان را بدهد؛ بحرانی که در مدل نیست، در نتایج هم نیست.

اگر برای دارایی‌های پرنوسان شبیه‌سازی می‌کنید، از توزیع‌هایی با دم پهن‌تر استفاده کنید یا سناریوهای بحرانی را جداگانه به شبیه‌سازی اضافه کنید. حداقل کاری که می‌توانید انجام دهید این است که صدک‌های پایینی نتایج را با احتیاط بیشتری تفسیر کنید.

مزایا و معایب روش مونت کارلو

با توجه به آنچه در بخش‌های قبل دیدید، می‌توانید مزایا و معایب این روش را در یک جدول خلاصه کنید:

مزایامعایب
به جای یک عدد، طیفی از نتایج و احتمال هر کدام را نشان می‌دهدآینده را پیش‌بینی نمی‌کند و فقط به اندازه فرض‌هایش معتبر است
ریسک‌هایی را آشکار می‌کند که بک‌تست ساده نشان نمی‌دهدبا توزیع نرمال، رویدادهای نادر را دست کم می‌گیرد
در حوزه‌های بسیار متنوعی کاربرد داردبرای دقت بالا به اجراهای زیاد و قدرت محاسباتی نیاز دارد
با اکسل یا چند خط پایتون قابل اجراستتفسیر اشتباه نتایج (مثل تکیه بر میانگین) گمراه‌کننده است
با تغییر فرض‌ها، سناریوهای مختلف را سریع مقایسه می‌کندبه کیفیت مولد اعداد تصادفی و جزئیات فنی حساس است

هزار آینده ممکن، به جای یک پیش‌بینی

روش مونت کارلو به سوال «فردا چه می‌شود؟» جواب نمی‌دهد. در عوض به سوال مهم‌تری جواب می‌دهد: «اگر فرض‌هایم درست باشند، چه اتفاق‌هایی ممکن است بیفتد و چقدر برای هر کدام آماده‌ام؟». برای یک معامله‌گر، همین تغییر نگاه یعنی تفاوت بین برنامه‌ریزی بر اساس بدترین افت تاریخی و برنامه‌ریزی بر اساس بدترین افت محتمل.

بک‌تست به شما می‌گوید در گذشته چه اتفاقی افتاد؛ مونت کارلو به شما می‌گوید چه اتفاق‌هایی می‌توانست بیفتد.

اگر یک استراتژی دارید، قبل از اجرای آن با پول واقعی، ترتیب معاملاتش را با این روش بازچینی کنید و صدک پنجم افت سرمایه را ببینید. فقط فراموش نکنید که هیچ شبیه‌سازی تضمین سود یا پیش‌بینی قیمت نیست و معامله در بازارهای مالی همیشه با ریسک از دست دادن سرمایه همراه است.

سوالات متداول

  • شبیه‌سازی مونت کارلو را چند بار باید تکرار کرد؟

    عدد ثابتی وجود ندارد. خطای تخمین با ریشه دوم تعداد تکرارها کم می‌شود، پس برای نصف کردن خطا باید تعداد اجراها را چهار برابر کنید. برای بیشتر کاربردهای ساده چند هزار تکرار کافی است و برای بررسی رویدادهای نادر به تکرار بیشتری نیاز دارید.

  • تفاوت مونت کارلو و بک‌تست چیست؟

    بک‌تست عملکرد یک استراتژی را فقط روی یک مسیر تاریخی نشان می‌دهد. مونت کارلو هزاران نسخه محتمل از همان نتایج یا از بازار می‌سازد تا محدوده نتایج ممکن و بدترین سناریوها را ببینید.

  • تفاوت مونت کارلو با شبیه‌سازی تاریخی در محاسبه VaR چیست؟

    شبیه‌سازی تاریخی فقط از بازده‌های واقعی گذشته استفاده می‌کند. مونت کارلو بر اساس یک مدل آماری سناریوهای جدیدی می‌سازد که ممکن است در گذشته رخ نداده باشند.

  • آیا برای استفاده از روش مونت کارلو باید برنامه‌نویسی بلد باشیم؟

    نه. شبیه‌سازی‌های ساده را می‌توانید با توابع تصادفی اکسل انجام دهید. برنامه‌نویسی با پایتون یا R برای شبیه‌سازی‌های بزرگ‌تر و پیچیده‌تر سریع‌تر و انعطاف‌پذیرتر است.

  • تفاوت روش مونت کارلو و یادگیری ماشین چیست؟

    مونت کارلو با یک مدل ریاضی مشخص و ورودی‌های تصادفی، نتایج احتمالی را شبیه‌سازی می‌کند. یادگیری ماشین از داده‌ها الگو یاد می‌گیرد و خودش رابطه بین ورودی و خروجی را کشف می‌کند.

  • MCMC یا زنجیره مارکوف مونت کارلو چیست؟

    MCMC دسته‌ای از روش‌های مونت کارلو است که با ساختن یک زنجیره مارکوف از توزیع‌های احتمال پیچیده نمونه‌گیری می‌کند. این روش بیشتر در آمار پیشرفته و مدل‌های بیزی کاربرد دارد و برای کاربردهای رایج معامله‌گری ضروری نیست.

محسن زمان

من محسن زمان با پیشینه‌ای در حوزه تکنولوژی و علاقه‌مندی به بازارهای مالی، بیش از چند سال است که به عنوان نویسنده در سایت سکه دیجیتال فعالیت می‌کنم. عشقم به دنیای ارزهای دیجیتال و فناوری بلاک‌چین باعث شد که قدم در این مسیر بذارم و با نگارش مقالات و پست‌های بلاگ، دانش و تجربه‌ام رو با شما به اشتراک بذارم. با دقت به جزئیات و تمرکز بر نیازهای مخاطبان، سعی می‌کنم محتوایی تحلیلی، به‌روز و کاربردی درباره رمزارزها ارائه بدم. نوشتن برام ابزاریه برای انتقال ایده‌ها و دیدگاه‌هام، و هدفم اینه که مطالبی آموزنده و اثرگذار برای شما خلق کنم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *