وضعیت بازار
ارزش معاملات سهام
ارزش معاملات اختیار
حجم معاملات اختیار
اطلاعات قیمت
✨ دوره آفلاین آموزش اختیارمعامله و فرمول نویسی
بیش از ۱۵ ساعت آموزش

مفاهیم پایه و کاربردی آپشن - استراتژی‌های سودآور برای مبتدیان و حرفه‌ای‌ها - آموزش گام به گام اختیار معامله - فرمول‌نویسی - فیلترنویسی - دسترسی نامحدود - پشتیبانی

بیشترین ارزش معاملات اختیار معامله
روزانه
هفتگی
ماهیانه
روزانه
هفتگی
ماهیانه
نزدیکترین سررسید دوره های معاملاتی
نماد روز تا سررسید
برترین دارایی های پایه
روزانه
هفتگی
ماهیانه
دریافت و فعال سازی آنلاین کد بورسی و اختیار معامله
ما را در شبکه های اجتماعی دنبال کنید

فرمول نویسی و فیلتر موقعیت های مناسب لانگ استرانگل Long strangle

آموزش تخصصی فرمول‌نویسی و فیلتر موقعیت‌های بهینه برای استراتژیLong strangle در آپشن باز. با تکنیک‌های هوشمند، بهترین فرصت‌ها را شناسایی و سود خود را حداکثر کنید

جهت نوشتن فرمول و فیلتر   به صفحه دیده بان رفته سپس بر روی ساخت ستون یا ساخت فیلتر کلیک کنید. نام ستون یا فیلتر را مشخص، کد را در قسمت ادیتور نوشته و در نهایت جهت مشاهده نتیجه بر روی ذخیره کلیک کنید .

این ستون دو پارامتر قابل تنظیم دارد

  1. حداکثر هزینه قابل قبول برای استراتژی (condition1)
  2. حداکثر درصد اختلاف مجاز بین قیمت‌های اعمال (condition2)

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

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

برای هر موقعیت مناسب، اطلاعات زیر نمایش داده می‌شود

  • هزینه پرداختی
  • درصد افت لازم سهم تا سودده شدن
  • درصد رشد لازم سهم تا سودده شدن
  • درصد اختلاف قیمت‌های اعمال

لانگ استرانگل

کد ستون
// تعریف متغیرهای اولیه
let strategyDetails = ''; 
let optionIndex = -1; 

// تنظیم پارامترهای استراتژی
// maxTotalCost: حداکثر هزینه قابل قبول برای استراتژی (پیش‌فرض: 500)
let maxTotalCost = _var1 != '' ? _var1 : 500;
// maxStrikeDifference: حداکثر درصد اختلاف بین قیمت‌های اعمال (پیش‌فرض: 20)
let maxStrikeDifference = _var2 != '' ? _var2 : 20;

// بررسی تمام قراردادهای پوت موجود
while (OptionSE('', 'os')[++optionIndex] != undefined) { 
let putContract = OptionSE('', 'os')[optionIndex];

// رد کردن قراردادهای بدون حجم یا قیمت فروش
if (putContract.TI.Sell_1_Volume == 0 || Option.TI.Sell_1_Price == 0)
continue;

// محاسبه پارامترهای استراتژی
// totalCost: مجموع قیمت خرید کال و پوت
let totalCost = (putContract.TI.Sell_1_Price + Option.TI.Sell_1_Price);

// محاسبه نقطه سر به سری پوت
let putBreakEven = putContract.Strike - totalCost;
// محاسبه درصد فاصله قیمت فعلی تا نقطه سر به سری پوت
let putBreakEvenDistance = CalcRateChange(UA.TI.LastPrice, putBreakEven);

// محاسبه نقطه سر به سری کال
let callBreakEven = totalCost + Option.Strike;
// محاسبه درصد فاصله قیمت فعلی تا نقطه سر به سری کال
let callBreakEvenDistance = CalcRateChange(UA.TI.LastPrice, callBreakEven);

// محاسبه درصد اختلاف بین قیمت‌های اعمال
let strikePriceDifference = CalcRateChange(putContract.Strike, Option.Strike);

// بررسی شرایط استراتژی لانگ استرانگل
if (putContract.Strike < Option.Strike && 
Option.Type == "call" && 
strikePriceDifference < maxStrikeDifference && 
totalCost < maxTotalCost) {

// اضافه کردن موقعیت‌های خرید
pos.Add('buy', Option.Namad, 1, 'sell');
pos.Add('buy', OptionSE('', 'os')[optionIndex].Namad, 1, 'sell');

// ساخت متن نتیجه با جزئیات
strategyDetails += ShowDetail(putContract.Namad) + ' : ' + 
Style(-totalCost, 'red', ' ', ' هزینه پرداختی') + 
' [' + Style(putBreakEvenDistance, 'DarkCyan', ' ', 'افت سهم تا درسود قرار گرفتن%') + 
' , ' + Style(callBreakEvenDistance, 'DarkCyan', ' ', 'رشد سهم تا درسود قرار گرفتن%') + 
'] ' + Style(strikePriceDifference, 'black', ' ', 'درصد اختلاف 2 اعمال') + 
' : ' + pos.Build('لانگ استرانگل ' + Option.Namad);
}
}

// نمایش نتیجه نهایی
strategyDetails;

فیلتر موقعیت هایی که هزینه پرداختی  کمتر  از 500 ریال می باشد( از فیلد var1 این عدد را می توانید تغییر دهید)
حداکثر اختلاف بین دو قیمت اعمال کمتر از 20 درصد باشد ( از فیلد var2 این عدد را می توانید تغییر دهید)

شرایط فیلتر

  • وجود قیمت معتبر برای هر دو اختیار معامله
  • قیمت اعمال پوت باید کمتر از قیمت اعمال کال باشد
  • هزینه کل استراتژی باید کمتر از مقدار تعیین شده باشد


فیلتر

کد فیلتر
let result = // تعریف متغیرهای اولیه
let isStrategyFound = false;
let optionIndex = -1;

// تنظیم پارامترهای فیلتر
// maxTotalCost: حداکثر هزینه قابل قبول برای استراتژی (پیش‌فرض: 500)
let maxTotalCost = _var1 != '' ? _var1 : 500;
// maxStrikeDifference: حداکثر درصد اختلاف بین قیمت‌های اعمال (پیش‌فرض: 20)
let maxStrikeDifference = _var2 != '' ? _var2 : 20;

// بررسی تمام قراردادهای پوت موجود
while (OptionSE('', 'os')[++optionIndex] != undefined) { 
// دریافت اطلاعات قرارداد پوت
let putContract = OptionSE('', 'os')[optionIndex];

// رد کردن قراردادهای بدون حجم یا قیمت فروش
if (putContract.TI.Sell_1_Volume == 0 || Option.TI.Sell_1_Price == 0)
continue;

// محاسبه هزینه کل استراتژی (مجموع قیمت خرید کال و پوت)
let totalCost = putContract.TI.Sell_1_Price + Option.TI.Sell_1_Price;

// محاسبه درصد اختلاف بین قیمت‌های اعمال
let strikePriceDifference = CalcRateChange(putContract.Strike, Option.Strike);

// بررسی شرایط فیلتر
if (putContract.TI.Sell_1_Price > 0 &&          // وجود قیمت فروش برای پوت
Option.TI.Buy_1_Price > 0 &&                // وجود قیمت خرید برای کال
putContract.Strike < Option.Strike &&        // قیمت اعمال پوت کمتر از کال
Option.Type == "call" &&                    // اطمینان از نوع کال
totalCost < maxTotalCost &&                 // کنترل هزینه کل
strikePriceDifference < maxStrikeDifference // کنترل اختلاف قیمت‌های اعمال
) {
isStrategyFound = true;
break;
}
}

// برگرداندن نتیجه فیلتر
isStrategyFound;
لطفا سوال یا نظر خود را در این قسمت مطرح فرمایید
وارد کردن شماره همراه و ایمیل اختیاری می باشد و فقط جهت اطلاع رسانی از دریافت پاسخ استفاده خواهد شد .

×