آپشن باز
آپشن باز

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

پیام‌رسانخرید اشتراک
کانال آپشن‌باز|گروه آپشن‌بازان

ابزارها

  • میزکار آپشن
  • دیده‌بان آپشن
  • زنجیره قراردادها
  • ماشین حساب بلک‌شولز
  • نقشه بازار سهام

آموزش و ارتباط

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

درباره آپشن‌باز

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

© 2026 آپشن باز — تمامی حقوق محفوظ است.

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

آزمایشگاه فرمول‌نویسی — رایگان و بدون ثبت‌نام

به جدول یاد بده
با چشمِ تو نگاه کند

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

۴ قدم · ۱۰ درس تعاملی · حدود ۲۰ دقیقه · بدون پیش‌نیاز برنامه‌نویسی

دیده‌بان، قبل از فرمول…
نمادپرمیومفاصله٪
ضخود7001۴۴۷؟
ضخود7002۲۸۹؟
ضخود7003۱۵۳؟
ضخود7004۸۱؟
ضخود7011۶۰۱؟

ستون سوم را هیچ جدولی نمی‌نویسد — خالی است.

اول خیالت را راحت کنیم: فرمول‌نویسی شرط استفاده از آپشن‌باز نیست

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

فیلترهای پایه

فیلتر سرستون و فیلترهای سریع دیده‌بان روی همهٔ ستون‌های داخلی کار می‌کنند — بدون هیچ کدی.

رفتن به دیده‌بان ←

ستون و فیلترهای آماده

ده‌ها ستون محاسباتی و فیلتر ساخته‌شده که با یک کلیک روی دیده‌بانت نصب می‌شوند؛ فهرست کامل با شرح تنظیمات هرکدام در دانشنامه.

دیدن فهرست کامل ←

استراتژی‌های کامل آماده

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

دیدن در دیده‌بان ←

قدم ۱ از ۴

فرمول‌نویسی چیست؟

با یک مثال که هیچ ربطی به بورس ندارد — و بدون اینکه هنوز کدی ببینی.

فرض کن دنبال خانه می‌گردی. ۲۰۰۰ آگهی جلوی توست و بودجه‌ات مشخص است. هیچ‌کدام از این آگهی‌ها به‌تنهایی بد نیست — مشکل این است که نمی‌شود ۲۰۰۰ تا را با هم مقایسه کرد.

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

۱۰آگهی
نمونه‌ای از ۲۰۰۰ آگهی
منطقهمتراژ (متر)قیمت (میلیارد)قیمت هر متر (میلیون)
سعادت‌آباد۹۵۱۲؟
جنت‌آباد۸۰۷٫۲؟
پونک۱۱۰۹٫۹؟
پونک۷۵۸٫۲؟
تهرانپارس۸۸۶٫۲؟
پونک۱۳۰۱۲٫۴؟
سعادت‌آباد۱۴۰۲۱؟
جنت‌آباد۶۵۵٫۹؟
پونک۹۵۸٫۶؟
تهرانپارس۱۰۵۷٫۴؟
ستون چهارم خالی است چون هیچ آگهی‌ای «قیمت هر متر» را نمی‌نویسد. دو دکمهٔ بالا را امتحان کن.

بدون اینکه اسمش را بدانی، همین الان دو کار کردی — و این دو کار، تمامِ فرمول‌نویسی است:

ستون محاسباتی

عددی ساختی که وجود نداشت

«قیمت هر متر» در هیچ آگهی‌ای نوشته نشده بود. تو از تقسیم قیمت بر متراژ ساختی‌اش. بدون آن، یک خانهٔ ۷۵ متری ۸ میلیاردی و یک ۱۳۰ متری ۱۲ میلیاردی اصلاً قابل مقایسه نیستند.

فیلتر

بقیه را کنار گذاشتی

دو شرط گذاشتی: فقط پونک، و فقط زیر ۱۰۰ میلیون. هر آگهی که هر دو را نداشت رفت کنار. آنچه ماند، آن‌قدر کم است که واقعاً بتوانی نگاهشان کنی.

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

حالا همین را روی اختیار معامله بگذار

  • هر آگهیهر قرارداد اختیار معامله
  • منطقهنماد پایه — خودرو، شستا، اهرم
  • متراژ و سال ساختقیمت اعمال و روزهای مانده تا سررسید
  • قیمت آگهیپرمیوم قرارداد
  • قیمت هر متر — عددی که خودت ساختیفاصله تا اعمال، ارزش زمانی، بازده ماهانه — عددی که خودت می‌سازی

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

اگر بلد باشی

  • خودت تصمیم می‌گیری بر چه اساسی قرارداد را بسنجی، نه ستون‌هایی که از قبل ساخته شده.
  • یک بار می‌نویسی، هر روز استفاده می‌کنی — بازار که تکان می‌خورد، جدول خودش به‌روز می‌شود.
  • چند شرط را هم‌زمان می‌گذاری؛ کاری که با چشم روی صدها قرارداد شدنی نیست.
  • استراتژی‌های چندلگی مثل کاورد کال و اسپرد را روی همهٔ قراردادها با هم می‌سنجی.

اگر بلد نباشی

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

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

اصلاً به درد تو می‌خورد؟

صادقانه: برای همه لازم نیست. این فهرست کوتاه را بخوان و خودت تصمیم بگیر — اگر جوابت «نه» بود، وقتت را نگذار.

بله، اگر…

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

فعلاً نه، اگر…

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

و در هر دو حالت چیزی از دست نمی‌دهی: همهٔ ابزارهای آماده سر جایشان هستند، و این صفحه هم هر وقت لازمت شد همین‌جاست.

قدم ۲ از ۴

ستون محاسباتی

عددی که در جدول نیست را خودت می‌سازی — همان کاری که با «قیمت هر متر» کردی.

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

کوتاه‌ترین ستون محاسباتی دنیا

JavaScript
return roundNumber(intrinsic(), 0);

intrinsic() ارزش ذاتی قرارداد را می‌دهد و roundNumber گردش می‌کند. همین یک خط، برای تک‌تک قراردادهای جدول جداگانه اجرا می‌شود و ستون «ارزش ذاتی» را می‌سازد. هیچ ردیفی حذف نمی‌شود — ستون فقط اضافه می‌کند.

جدول دیده‌بانضخود۷۰۰۱ضخود۷۰۰۲ضخود۷۰۰۳فرمول توسلولِ همان ردیفو همین کار برای هر ردیف دیگر تکرار می‌شود

مهم‌ترین تصویری که باید در ذهنت بماند همین بالاست: فرمول یک بار برای کل جدول اجرا نمی‌شود؛ برای هر قرارداد یک بار جداگانه اجرا می‌شود و خروجی‌اش سلولِ همان ردیف را پر می‌کند. پس موقع نوشتن، همیشه به «یک ردیف» فکر کن، نه به جدول.

قدم ۳ از ۴

فیلتر

قراردادهایی که به دردت نمی‌خورند، خودشان کنار می‌روند.

دومین کاری که در مثال خانه کردی، غربال بود: «فقط پونک، فقط زیر ۱۰۰ میلیون». فیلتر همان فرمول است، فقط به‌جای مقدار، یک بله یا خیر برمی‌گرداند. هر قراردادی که «خیر» بگیرد از جدول کنار می‌رود — ستونی ساخته نمی‌شود، فقط ردیف‌ها کم می‌شوند.

کوتاه‌ترین فیلتر دنیا

JavaScript
return option.daysUntilMaturity < 30;

«فقط قراردادهایی که کمتر از ۳۰ روز تا سررسید دارند.» عبارت مقایسه‌ای خودش بله/خیر است، پس همین یک خط کافی است.

و نکته‌ای که خیلی‌ها دیر می‌فهمند: لازم نیست بین ستون و فیلتر یکی را انتخاب کنی. یک فرمول می‌تواند هم‌زمان هر دو باشد — هم عددی نشان بدهد و هم بر اساس همان عدد غربال کند. درس «از ستون به فیلتر» در آزمایشگاه دقیقاً همین را یاد می‌دهد.

کارهایی که از فرمول برنمی‌آید

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

  • بک‌تست و تحلیل تاریخی

    فرمول فقط عکسِ همین لحظهٔ بازار را می‌بیند. تنها نگاهش به گذشته lastDayPrice و lastDayVolume است، یعنی همین دیروز. تابع uaPriceRange() هم قیمت گذشته نیست — پیش‌بینی است که دامنهٔ نوسان امروز را تا سررسید جلو می‌برد. برای «سه ماه پیش چه شد» جای دیگری باید بگردی.

  • سفارش گذاشتن و معامله

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

  • هشدار و زمان‌بندی

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

  • سیگنال خرید و فروش

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

  • قیمت‌گذاری هستون

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

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

قدم ۴ از ۴

آزمایشگاه

از اینجا به بعد فقط خواندن نیست — هر درس یک دکمهٔ «اجرا» دارد و کد واقعاً اجرا می‌شود.

هر درس یک کد قابل ویرایش دارد و یک دکمهٔ «اجرا». کد را عوض کن، دوباره اجرا کن، ببین چه می‌شود — هیچ‌چیز ذخیره نمی‌شود و هیچ‌چیز خراب نمی‌شود. درس‌ها یکی‌یکی باز می‌شوند تا مسیر گم نشود.

دادهٔ آزمایشگاه

۳۲ قرارداد روی ۲ نماد پایه — ثابت و همیشه در دسترس.

خودروقیمت ۲۶۰۰ · نوسان تاریخی ۴۵٪ · IV Rank ۶۲
اهرمقیمت ۱۸۵۰ · نوسان تاریخی ۳۲٪ · IV Rank ۲۸

این اعداد ساختگی‌اند و به بازار واقعی وصل نیستند، ولی الکی هم نیستند: پرمیوم‌ها با همان بلک‌شولزِ خودِ آپشن‌باز قیمت‌گذاری شده‌اند و وضعیت ITM/ATM/OTM با همان طبقه‌بند برنامه حساب شده. پس هر چه اینجا یاد بگیری، روی دیده‌بان واقعی هم همان‌طور کار می‌کند.

درس‌ها یکی‌یکی باز می‌شوند — هر درس را که اجرا کنی، بعدی باز می‌شود.

  1. فصل ۱ — اولین قدم

    یاد می‌گیری فرمول کجا اجرا می‌شود، داده را از کجا بردارد و خروجی را چطور خوانا کند.

    1. ۱
    2. ۲
    3. ۳
    4. ۴
  2. فصل ۲ — تصمیم گرفتن

    از «نمایش دادن» به «تصمیم گرفتن» می‌رسی: شرط، رنگ، و تبدیل همان کد به فیلتر.

    1. ۵
    2. ۶
    3. ۷
  3. فصل ۳ — ابزارهای واقعی

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

    1. ۸
    2. ۹
    3. ۱۰
  4. ۱۱

میز آزاد

هرچه دوست داری بنویس و روی همان دادهٔ بالا اجرا کن. هیچ‌چیز ذخیره نمی‌شود و هیچ‌چیز خراب نمی‌شود.

در حال آماده‌سازی ویرایشگر…

چند مثال واقعی از اختیار معامله

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

درصد سر به سر

ستونساده

درصد فاصله قیمت سر به سر از قیمت پایه.

JavaScript
calcRateChange(ua.ti.lastPrice, breakeven()) + '%'

ارزش ذاتی رنگی

ستونساده

ارزش ذاتی: سبز اگر ITM، خاکستری اگر OTM.

JavaScript
style(roundNumber(intrinsic(), 0), intrinsic() > 0 ? 'green' : '#999')

درصد دامنه نوسان پایه

ستونساده

درصد مجاز رشد و افت روزانه نماد پایه نسبت به قیمت پایانی دیروز — سقفش صف خرید و کفش صف فروش می‌سازد. uaDailyRange() مبنا (base)، کف و سقف مجاز (low / high) و همان‌ها به درصد (downPct / upPct) را با هم برمی‌گرداند و اگر دامنه‌ای منتشر نشده باشد null می‌دهد؛ برای همین اول باید بررسی شود. خروجی: درصد سقف (+) سبز و درصد کف (−) قرمز.

JavaScript
const r = uaDailyRange();
if (!r) return '';
return style(`+${r.upPct}%`, '#16a34a') + ' / ' + style(`-${r.downPct}%`, '#dc2626');

دلتا رنگی

ستونساده

دلتا با رنگ‌بندی بر اساس مقدار.

JavaScript
let d = calcBS().delta;
return style(d, d > 0.5 ? '#16a34a' : d > 0.3 ? '#ea580c' : '#dc2626', '', 'delta');

قیمت اعمال تا سررسید در دسترس است؟

فیلترمتوسط

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

JavaScript
const r = uaPriceRange();
if (!r) return false;
return option.type == 'call'
  ? option.strike <= r.high
  : option.strike >= r.low;

بعد از این صفحه

چهار قدم تمام شد. از اینجا به بعد، یا مرجع می‌خواهی یا بازار واقعی.

راهنمای فرمول‌نویسی

مرجع کامل: هر فیلد option، ua و ti، همهٔ توابع آماده، عملگرها و مثال‌های مرجع. وقتی بلدی چه می‌خواهی و فقط دنبال اسم دقیقش می‌گردی، اینجاست.

دیدن مرجع ←

زبان فرمول‌نویسی

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

خواندن مقاله ←

فرمول‌های آماده

فهرست کامل ستون‌ها و فیلترهای آماده‌ای که بدون نوشتن حتی یک خط کد می‌توانی روی دیده‌بانت نصب کنی — با شرح تنظیمات هرکدام.

دیدن فهرست ←

مطالعهٔ بیشتر

۲۸ مقالهٔ دانشنامه دربارهٔ فرمول‌نویسی: پیاده‌سازی کاورد کال، انواع اسپرد، باترفلای، بلک‌شولز و یونانی‌ها، فیلترهای ترکیبی و بیشتر.

دستهٔ فرمول‌نویسی ←

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

همان کدی که اینجا نوشتی، در دیده‌بان روی قراردادهای واقعی و قیمت‌های زنده کار می‌کند.

رفتن به دیده‌بان

سؤالی داری؟ همین‌جا بپرس

ثبت پرسش/نظر شما

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

هنوز نظری ثبت نشده است.