📊 شرح فرمول و پارامترها
-
💰 ارزش معاملات: حداقل 100 میلیون تومان
Option.TI.TValue > 100000000 -
⏳ فاصله تا سررسید: بیشتر از 14 روز
Option.DaysUntilMaturity > 14 -
📈 قیمتگذاری بلک-شولز: اختلاف کمتر از 10 درصد
bsDiff <= 10 -
🔄 اهرم معاملاتی: بیشتر از 3
CalcLeverage() >= 3 -
⚖️ ارزش زمانی: بین 20% تا 80% قیمت
timeValue > (Option.TI.LastPrice * 0.2) && timeValue < (Option.TI.LastPrice * 0.8)
🛠️ نحوه سفارشیسازی فیلتر
-
حذف شرطها: برای نادیده گرفتن هر شرط، در بخش نتیجه نهایی، آن را با // کامنت کنید:
return highValue && // notNearExpiry && isAcceptableBS && isInTheMoney && // highLeverage && hasGoodValue; - تغییر مقادیر: با تغییر اعداد در هر بخش میتوانید شرایط را سختگیرانهتر یا آسانتر کنید
- اضافه کردن شرط: میتوانید شرطهای جدید تعریف کرده و به بخش نتیجه نهایی اضافه کنید
📝 فرمول کامل
// ارزش معاملات بالا (بیشتر از 100 میلیون)
let highValue = Option.TI.TValue > 100000000;
// تاریخ سررسید نزدیک نباشد (بیشتر از 14 روز)
let notNearExpiry = Option.DaysUntilMaturity > 14;
// محاسبه و بررسی اختلاف بلک شولز (کمتر از 10 درصد)
let bg = CalcBG(Option);
let bsDiff = Math.abs(((Option.TI.LastPrice - bg.bs) / bg.bs) * 100);
let isAcceptableBS = bsDiff <= 15;
// وضعیت در سود
let isInTheMoney = Option.State === 'ITM';
// اهرم بالای 3
let highLeverage = CalcLeverage() >= 3;
// محاسبه ارزش ذاتی
let intrinsicValue = 0;
if (Option.Type === 'call') {
intrinsicValue = Math.max(0, UA.TI.LastPrice - Option.Strike);
} else {
intrinsicValue = Math.max(0, Option.Strike - UA.TI.LastPrice);
}
// محاسبه ارزش زمانی
let timeValue = Option.TI.LastPrice - intrinsicValue;
// شرطهای ارزش ذاتی و زمانی
let hasGoodValue = intrinsicValue > 0 &&
timeValue > (Option.TI.LastPrice * 0.2) &&
timeValue < (Option.TI.LastPrice * 0.8);
// نتیجه نهایی - همه شرطها باید true باشند
highValue &&
notNearExpiry &&
isAcceptableBS &&
isInTheMoney &&
highLeverage &&
hasGoodValue