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

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

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

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

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

درصد اختلاف بین سطر اول خرید با بلک شولزhv

به منظور محاسبه درصد اختلاف از تابع CalcRateChange که در راهنمای فرمول نویسی بخش تابع های آپشن باز توضیحات ان بیا شده است استفاده کنید


CalcRateChange( Option.BlackSholesHV,Option.TI.Buy_1_Price, 1);

محاسبه سر به سری و درصد اختلاف با اخرین قیمت سهم پایه

let n = 0;

if ( Option.TI.Sell_1_Price > 1 && Option.Type == "call" ) n= Option.Strike + Option.TI.Sell_1_Price;

else n= Option.Strike - Option.TI.Sell_1_Price;

CalcRateChange(UA.TI.LastPrice,n);

در صورتی بخواهید محاسبات سر به سری با تغییر مبنای محاسبات سایت(اخرین قیمت ، پایانی و...) تغییر دهید

let be ;

let optionPrice = ScalePrice(Option.TI);

if (Option.Type == 'call')  be = optionPrice + Option.Strike;

else be = Option.Strike - optionPrice;

let beDiff = CalcRateChange(UA.TI.LastPrice, be);

beDiff;

توضیحات مربوط به ScalePrice در راهنمای فرمول نویسی بخش تابع های آپشن باز مطالعه نمایید

محاسبه شکاف

let spread = Option.TI.Sell_1_Price - Option.TI.Buy_1_Price;

spread = spread / Option.TI.LastPrice;

spread = (spread * 100).toFixed(0);

if (Option.TI.Sell_1_Price == 0 || Option.TI.Buy_1_Price == 0 || Option.TI.LastPrice == 0)

spread = 0;


نمایش 2 یا چند خروجی  در یک ستون  بصورت خطی و مجزا

به عنوان مثال برای دو خروجی A و B به این صورت Result= A + ":" + B;

نمایش ارزش ذاتی و درصد اختلاف پرمیوم با ارزش ذاتی

result ='';

var intrinsictValue = 0;

if (Option.State == "ITM") {

if (Option.Type == "call") intrinsictValue = UA.TI.LastPrice - Option.Strike;

else intrinsictValue = Option.Strike - UA.TI.LastPrice;

}

var b = CalcRateChange(intrinsictValue, Option.TI.LastPrice);

result = intrinsictValue+ ' : ' + b ;

نمایش 2 یا چند خروجی  در یک ستون  هر کدام در یک خط

از کدهای html برای این منظور مانند <p> یا </br> و .. می توانیم استفاده کنیم  . 

در مثال زیر می خواهیم  2 قرارداد قبل و بعد قرارداد فعلی را به همراه لینک نمایش در یک خط نمایش  دهیم

let result= '';

for(index = -2; index <= 2 ; index++)

if (index == 0) continue;

if (OptionSE(index) != undefined )

result += '<p>{0}: {1} </p>'.format(index, ShowDetail(OptionSE(index).Namad ));

}

result;

از تابع format برای تمیزی کد استفاده شده . 

با از استفاده از <br>

let result= '';

for(index = -2; index <= 2 ; index++)

if (index == 0) continue;

if (OptionSE(index) != undefined )

result += index +""+ ShowDetail(OptionSE(index).Namad ) + '<br>';

}

result;

محاسبه ارزش ذاتی

var intrinsictValue = 0;

if (Option.State == "ITM") {

if (Option.Type == "call")

intrinsictValue = UA.TI.LastPrice - Option.Strike;

else intrinsictValue = Option.Strike - UA.TI.LastPrice;

}

intrinsictValue;

محاسبه اهرم

از تابع CalcLeverage استفاده میکنیم (مشاهده توضیحات در راهنمای فرمول نویسی بخش تابع های آپشن باز )

CalcLeverage(UA.TI.Lastprice, CalcBG().delta, ScalePrice(Option.TI));


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

let result = '';

let index = -1;

let condition1  = var1 != '' ? var1 : 2;

let condition2  = var2 != '' ? var2 : 10;

while ( OptionSE(++index) != undefined ){

if (OptionSE(index).TI.Buy_1_Volume == 0 || Option.TI.Buy_1_Volume == 0)

 continue;

//سرمایه درگیر

let debit = (Option.TI.Sell_1_Price - OptionSE(index).TI.Buy_1_Price) * Option.Size;

// دریافتی در اعمال

let profit = ((OptionSE(index).Strike - Option.Strike) *Option.Size) - debit;

let yCapital = MP(((profit / debit) * 100) , Option.DaysUntilMaturity);

//درصد اختلاف

let disStrike = CalcRateChange(UA.TI.LastPrice ,OptionSE(index).Strike );


if (yCapital >=condition1 && disStrike > condition2 && disStrike>0 && Option.TI.Sell_1_Price > 0  && OptionSE(index).TI.Buy_1_Price > 0 ){

pos.Add('buy', Option.Namad,1, 'sell');

pos.Add('sell', OptionSE(index).Namad, 1, 'buy', false);

result +=ShowDetail(OptionSE(index).Namad) + ' : ' + Style(yCapital , 'green' , ' ' , 'درصد حداکثر سود') + '  :  ' +  Style(disStrike , 'DarkOrange' );

result += pos.Build('اسپرد ' + Option.Namad);

}

}

result;

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

  • حسین سه شنبه، ۱۹ اردیبهشت ۱۴۰۲ - ۱۹:۵

    باسلام آیا این فیلترها در سایت tse قابل اجرا است؟ چون یکیش را تست کردم جواب نمیده


    شهرزاد سه شنبه، ۱۹ اردیبهشت ۱۴۰۲ - ۱۹:۱۷

    خیر



    حسین سه شنبه، ۱۹ اردیبهشت ۱۴۰۲ - ۱۹:۲۲

    امکانش هست فرمولهایی که در سایت tse امکان پیاده سازیش باشه معرفی کنید


    شهرزاد سه شنبه، ۱۹ اردیبهشت ۱۴۰۲ - ۲۰:۲

    این مقاله ببینید


  • اشکان چهار شنبه، ۱۳ اردیبهشت ۱۴۰۲ - ۱۸:۲۵

    سلام چگونه میشود فرمولی نوشت که بشه باهاش نوسان ضمنی اختیار های کمتر از 0.6 را پیدا کرد


    شهرزاد چهار شنبه، ۱۳ اردیبهشت ۱۴۰۲ - ۲۲:۲۴

    var param = {Premium:Option.TI.Sell_1_Price};

    var bg = CalcBG(param);

    0 < bg.iv

    &&

    bg.iv < 0.6

    &&

    Option.TI.Sell_1_Price>1


×