فیلتر قراردادها بر اساس درصد تفاوت بین قیمت و قیمت تئوری

آموزش کاربردی پیاده‌سازی اسکنر انحراف قیمت بازار از قیمت بلک‌شولز به همراه فیلتر حاشیه امنیت اعمال سهم با پنل تعاملی ویژوال (⚙️).

نویسنده: آپشن بازتاریخ انتشار: 1405/02/02آخرین به‌روزرسانی: 1405/06/0910 دقیقه مطالعه
اشتراک‌گذاری:

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

چگونه در دیده‌بان آپشن‌باز اجرا می‌شود؟

برای پیاده‌سازی این فرمول دوپاره (شامل ستون نمایش مقادیر و فیلتر غربالگری ردیف‌ها)، گام‌های زیر را بردارید:

دو شرط که جدول را از دو جهت می‌برند ناحیهٔ موردنظر اختلاف از قیمت تئوری فاصلهٔ اعمال تا قیمت سهم هرکدام به‌تنهایی، ردیف‌های زیادی برمی‌گرداند که به درد نمی‌خورند
دو شرط جدول را از دو جهت متفاوت می‌برند و فقط اشتراکشان جالب است — هرکدام تنها، ردیف‌های زیادی برمی‌گرداند که به درد نمی‌خورند.
اول ستون، بعد فیلتر ستون هر دو عدد را نشان می‌دهد با رنگ‌های متفاوت تا حسِ بازه پیدا کنید فیلتر همان دو عدد را می‌سنجد با آستانه‌های شما و ردیف‌ها را کم می‌کند آستانه را بدون دیدن توزیع نمی‌شود انتخاب کرد پس اول ستون را بسازید و چند روز نگاهش کنید عددی که در یک نماد بزرگ است، در نماد دیگر عادی است
آستانه را بدون دیدن توزیع نمی‌شود انتخاب کرد — اول ستون را بسازید و چند روز نگاهش کنید، بعد فیلتر بگذارید.
  1. به دیده‌بان آپشن بروید (راهنمای دیده‌بان)، یا از طریق میزکار باکس دیده‌بان اضافه کنید;
  2. در بالای جدول روی دکمهٔ فرمول‌نویسی کلیک کنید؛
  3. یک ستون برای مشاهده اختلاف‌ها ایجاد کنید و کدهای بخش «1. ستون محاسباتی» را در آن قرار دهید؛
  4. سپس یک فیلتر هوشمند بسازید و کدهای بخش «2. فیلتر دیده‌بان» را در آن قرار دهید.

بخش اول: فرمول ستون محاسباتی

ابتدا برای اینکه بتوانید میزان انحراف را در جدول مشاهده کنید، ستونی به نام «اختلاف بلک‌شولز/سهم» بسازید و فرمول زیر را در ادیتور آن بنویسید. در این فرمول از تابع style برای رنگ‌آمیزی و تولتیپ دار کردن اعداد استفاده شده است:

مقایسه با سرخط تقاضاست، نه با آخرین معامله calcRateChange(option.blackSholesHV, option.ti.buy1Price) سرخط تقاضا کسی همین حالا حاضر است این مبلغ را بپردازد آخرین معامله ممکن است ساعت‌ها پیش بوده باشد و الان خریداری نداشته باشد این انتخاب، سؤال را عوض می‌کند از «چند معامله شد» به «الان چقدر می‌دهند» — و دومی قابل اجراست
مقایسه با سرخط تقاضاست نه آخرین معامله — سؤال از «چند معامله شد» به «الان چقدر می‌دهند» عوض می‌شود، و دومی قابل اجراست.
یک سلول، دو عدد [ 62 : 8 ] عدد اول اختلاف تقاضا از قیمت تئوری عدد دوم فاصلهٔ اعمال از قیمت سهم رنگ‌ها برای این‌اند که در یک نگاه از هم جدا شوند وگرنه دو درصدِ کنار هم، به‌سرعت با هم اشتباه گرفته می‌شوند و تولتیپ هر رنگ می‌گوید کدام است
یک سلول دو درصد را کنار هم می‌گذارد و رنگ‌ها از هم جدایشان می‌کنند — دو درصدِ بی‌رنگ، به‌سرعت با هم اشتباه گرفته می‌شوند.
// محاسبه درصد اختلاف قیمت بهترین خریدار از قیمت بلک‌شولز HV تاریخی let disBlacksholsBid = calcRateChange(option.blackSholesHV, option.ti.buy1Price); // محاسبه درصد تفاوت قیمت اعمال با آخرین قیمت سهم پایه let disStrikeUa = calcRateChange(ua.ti.lastPrice, option.strike); let result = ''; // نمایش نتایج فقط در صورت معتبر بودن اردر خرید و بلک‌شولز if (option.ti.buy1Price > 0 && option.blackSholesHV > 1) { result = '[ ' + style(disBlacksholsBid, 'DarkCyan', ' ', 'اختلاف بلک‌شولز از تقاضا') + ' : ' + style(disStrikeUa, 'DarkOrchid', ' ', 'اختلاف سهم از اعمال') + ' ]'; } result;

بخش دوم: فرمول فیلتر هوشمند با تنظیمات ویژوال

حالا می‌خواهیم به جای هاردکد کردن شروط (مثلاً اختلاف 50 درصدی بلک‌شولز و 5 درصدی قیمت اعمال)، متغیرها را به صورت کاملاً ویژوال تعریف کنیم تا هر زمان خواستیم، بدون باز کردن ادیتور کد و از طریق آیکون ⚙️ سرستون، آن‌ها را تغییر دهیم.

دو شرط اعتبار، پیش از هر محاسبه option.ti.buy1Price > 0 سرخط تقاضا وجود دارد option.blackSholesHV > 1 قیمت تئوری معتبر است بدون این‌ها، تقسیم بر عددِ نزدیک صفر انجام می‌شود و درصدِ عظیمِ بی‌معنایی می‌سازد که بالای مرتب‌سازی می‌نشیند یعنی نتیجه شبیه بهترین فرصت جدول به نظر می‌رسد در حالی که فقط یک قرارداد بدون خریدار است
بدون دو شرط اعتبار، تقسیم بر عددی نزدیک صفر درصدی عظیم و بی‌معنا می‌سازد که بالای مرتب‌سازی می‌نشیند و شبیه بهترین فرصت است.
آستانه‌ها را در کد قفل نکنید هاردکد برای هر تغییر باید کد را باز کنید ثابتِ ویژوال در سرستون یک عددگیر تعاملی ظاهر می‌شود const FILTER_MIN_BS_DIFF = 50; فیلتری که هر روز تنظیم می‌شود، هر روز هم استفاده می‌شود و فیلتری که باید کدش را باز کنید، معمولاً نمی‌شود
ثابتِ ویژوال در سرستون یک عددگیر می‌سازد — فیلتری که هر روز تنظیم می‌شود، هر روز هم استفاده می‌شود.

یک فیلتر جدید ایجاد کرده و این کد را در آن ذخیره کنید:

// --- تنظیمات ویژوال قابل تغییر در پنل ⚙️ --- const FILTER_MIN_BS_DIFF = 50; // حداقل درصد اختلاف تقاضا از بلک‌شولز const FILTER_MIN_STRIKE_DIFF = 5; // حداقل درصد اختلاف قیمت اعمال از سهم پایه // 1. محاسبه اختلاف‌ها بر اساس متغیرهای سیستم let disBlacksholsBid = calcRateChange(option.blackSholesHV, option.ti.buy1Price); let disStrikeUa = calcRateChange(ua.ti.lastPrice, option.strike); // 2. شروط منطقی فیلتر let hasValidBid = option.ti.buy1Price > 0; let hasValidBS = option.blackSholesHV > 1; let matchesBsCondition = disBlacksholsBid > FILTER_MIN_BS_DIFF; let matchesStrikeCondition = disStrikeUa > FILTER_MIN_STRIKE_DIFF; // نتیجه خروجی فیلتر hasValidBid && hasValidBS && matchesBsCondition && matchesStrikeCondition;

توضیح کارکرد فیلتر و مفاهیم ریاضی آن

قیمت تئوریِ این فیلتر، از نوسان تاریخی می‌آید نوسان تاریخی از حرکت واقعی گذشتهٔ سهم ساخته می‌شود مبنای قیمت تئوری اینجا نوسان ضمنی از قیمت خودِ قرارداد یعنی انتظار بازار در این فیلتر استفاده نمی‌شود پس اختلاف بزرگ یعنی بازار با گذشته هم‌نظر نیست نه اینکه قیمت قرارداد لزوماً غلط است همین تفاوت است که این را یک غربال می‌کند، نه یک سیگنال
قیمت تئوریِ این فیلتر از نوسان تاریخی ساخته می‌شود، پس اختلاف بزرگ یعنی بازار با گذشته هم‌نظر نیست — نه اینکه قیمت غلط است.
این فیلتر چه ادعایی ندارد نمی‌گوید این قرارداد ارزان است یا فرصت آربیتراژ است یا باید بخرید می‌گوید این ردیف‌ها با قیمت تئوریِ مبتنی بر گذشته فاصله دارند و ارزش نگاه کردن دارند اختلاف با تئوری می‌تواند دلیل واقعی داشته باشد خبر، رویداد پیش‌رو، یا نوسانی که بازار انتظارش را دارد و گذشته ندیده پس این فهرست، نقطهٔ شروع بررسی است — نه نتیجهٔ آن
اختلاف با قیمت تئوری می‌تواند دلیل واقعی داشته باشد — خبر یا رویدادی که گذشته ندیده. این فهرست نقطهٔ شروع بررسی است، نه نتیجهٔ آن.
  • پارامتر option.blackSholesHV: قیمت تئوری قرارداد اختیار معامله است که توسط فرمول ریاضی بلک‌شولز و بر اساس نوسان‌پذیری تاریخی دارایی پایه (Historical Volatility) محاسبه می‌شود.
  • تابع calcRateChange(val1, val2): این تابع به صورت توکار درصد تغییر بین دو مقدار را برمی‌گرداند. در اینجا انحراف قیمت اردر خرید بازار از قیمت تئوری را می‌سنجیم.
  • پنل تعاملی (⚙️): با ذخیره فیلتر بالا، کافیست روی نمایه ⚙️ در سرستون فیلتر کلیک کنید. یک عددگیر تعاملی ظاهر می‌شود که می‌توانید درصدها را به راحتی تغییر دهید تا دیده‌بان در کسری از ثانیه خروجی را برای شما غربال کند.

مطالب مرتبط: دستورالعمل جامع تنظیمات ویژوال (⚙️) · آشنایی با مدل ارزش‌گذاری بلک‌شولز · پرامپت فرمول‌نویسی برای هوش مصنوعی

مقالات مرتبط

مدیریت خروجی و فیلتر فرمول | راهنمای تنظیمات ویژوال دیده بان

آموزش گام‌به‌گام طراحی تنظیمات ویژوال: آیکن تنظیمات، کنترل‌های عدد، تیک، لیست کشویی، چندانتخابی، مرتب‌سازی و ترتیب چیدمان ستون‌ها.

مدل بلک شولز و قیمت تئوری قرارداد اختیار معامله

مدل بلک‌شولز در آپشن — قیمت تئوری، IV ضمنی، یونانی‌ها و استفاده در دیده‌بان و جزئیات قرارداد.

فرمول نویسی با هوش مصنوعی | پرامپت آماده ChatGPT و Claude

پرامپت آمادهٔ کپی با مرجع کامل فیلدها، توابع و قوانین فرمول‌نویسی دیده‌بان آپشن‌باز — آن را به ChatGPT یا Claude یا Cursor بدهید تا ستون و فیلتر دلخواهتان را بنویسد. به‌همراه نمونهٔ درخواست دقیق و نسخهٔ متنی همیشه‌به‌روز.

راهنمای دیده بان آپشن باز | فیلتر و فرمول نویسی

راهنمای جامع دیده‌بان آپشن‌باز: جدول زنده قراردادها، فیلتر سریع روی سرستون (سربه‌سر، IV و …)، پنل فیلتر، فرمول‌نویسی، آلارم و اتصال به نمودار استراتژی.

استراتژی های اختیار معامله در دیده بان آپشن باز

فهرست کامل استراتژی‌های اختیار معامله در دیده‌بان آپشن‌باز — کاوردکال، اسپرد، استرادل، باکس و … — همراه با راهنمای تصویری افزودن ستون، تنظیم فیلترها و باز کردن نمودار سود و زیان.

فیلتر هوشمند قراردادهای اختیار معامله

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

نمونه فرمول های کاربردی فیلترنویسی دیده بان اختیار معامله

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

ایجاد فیلدهای شخصی و دسترسی به آنها در فرمول نویسی

آموزش ساخت پرتفوی اختصاصی، تعریف فیلدهای شخصی (تعداد، قیمت خرید/فروش، یادداشت) و دسترسی پویا به آن‌ها در فرمول‌ها و ستون‌های دیده‌بان.

دیدگاه‌ها و پرسش‌ها

اگر سوال یا ابهامی در رابطه با این مطلب دارید، همین‌جا بپرسید؛ کارشناسان ما پاسخ می‌دهند.

تجربه یا نکته‌ای دارید؟ نوشتنش به بقیهٔ کاربران هم کمک می‌کند.

پرسش‌ها و نظرات کاربران

4 پیام
مینو
21 تیر 1405 - 17:33
اگر قراردادی خیلی زیر قیمت تئوری باشد، یعنی فرصت است؟
پشتیبانیپاسخ
26 تیر 1405 - 12:08
گاهی بله، ولی در بیشتر موارد بازار چیزی می‌داند که مدل نمی‌داند — و سه علت رایج‌تر از فرصت هستند. نقدشوندگی. قراردادی که معامله نمی‌شود، «قیمت» ندارد؛ آخرین قیمتش می‌تواند مال چند روز پیش باشد. درصد اختلافی که روی آن حساب شده، اختلاف با یک عدد کهنه است: سنجش نقدشوندگی ورودی‌های مدل. قیمت تئوری به نوسانی که به مدل داده‌اید حساس است. اگر آن ورودی با انتظار واقعی بازار نخواند، خروجی هم منحرف می‌شود — و «ارزانی» که می‌بینید مال مدل شماست نه بازار. خبر. پیش از رویداد، بازار چیزی را قیمت‌گذاری می‌کند که در مدل نیست. روش عملی: این فیلتر را برای کوتاه کردن فهرست به کار ببرید نه برای تصمیم. از چند ده کاندیدایی که می‌دهد، هر کدام را جدا بررسی کنید: حجم و موقعیت باز، فاصلهٔ خرید و فروش، و اینکه خبری در راه هست یا نه. و سطح نوسان را نسبت به تاریخچهٔ خود نماد بسنجید، نه با عدد مطلق: رتبه نوسان ضمنی یا IV RANK
بهرام
02 خرداد 1405 - 18:56
فیلتر را گذاشتم ولی نتایج بالای جدول عددهای عجیب و غریب نشان می‌دهند. مشکل از فرمول است؟
پشتیبانیپاسخ
07 خرداد 1405 - 14:21
احتمالاً نه — و مقاله خودش علت اصلی را می‌گوید: تقسیم بر عددِ نزدیک صفر. وقتی قیمت تئوری خیلی کوچک باشد، درصد اختلاف به عددی نجومی تبدیل می‌شود و دقیقاً بالای مرتب‌سازی می‌نشیند — یعنی شبیه «بهترین فرصت جدول» به نظر می‌رسد در حالی که فقط یک خطای تقسیم است. به همین دلیل شرط‌های اعتبارسنجی که در همین مقاله آمده اختیاری نیستند؛ بخشی از خود فیلترند. بدون آن‌ها، هر بار مرتب‌سازی نزولی بزنید همان ردیف‌های بی‌معنا بالا می‌آیند. دو تلهٔ دیگر که همین علامت را می‌سازند: آستانهٔ صفر فیلتر را خاموش می‌کند. اگر فکر می‌کنید فیلتری گذاشته‌اید ولی اثری ندارد، ممکن است اصلاً اجرا نشده باشد. عدد کوچکی مثل 0.1 بگذارید. مقدار خالی با صفر یکی نیست. قراردادی که هنوز معامله نشده قیمتش خالی است، نه صفر — و باید جدا هندل شود. و یک قید محتوایی: درصد اختلاف با قیمت تئوری فقط یک غربال است. قراردادی که «ارزان» به نظر می‌رسد اغلب همان است که کسی معامله‌اش نمی‌کند: سنجش نقدشوندگی