وضعیت بازار
ارزش معاملات سهام
ارزش معاملات اختیار
حجم معاملات اختیار
اطلاعات قیمت

کد تخفیف نوروزی "1403" خرید اشتراک سایت

@Optionbaaz

امروز ساعت 19 الی 21

مسیر رسیدن به سود مستمر
دوره آفلاین آموزش اختیارمعامله و فرمول نویسی
بیش از 15 ساعت ویدیوی آموزشی

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

اطلاعات دوره و ثبت نام

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

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

گاهی لازم می شود در فرمول و محاسبات خود به غیر از فیلدهایی که بصورت پیش فرض تعریف شده اند فیلدهایی که خود نیاز داریم تعریف و مقدار دهی کنیم

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

 ایجاد پرتفوی شخصی  -  محاسبه سود و زیان لحظه ای - ایجاد یادداشت 

خواسته:  می خواهیم بصورت ساده سود خرید یا فروش یک قرارداد رو محاسبه و یادداشتی که  برای آن نوشته ایم را بصورت tooltip ببینیم یه به آنها در کدهای خود دسترسی داشته باشیم

در این مثال  قرارداد"ضهرم1226" را به مبلغ  8000 خریده ایم  و  قراداد "ضهرم1218" را 1500 فروخته این و می خواهیم بصورت لحظه ای سود و زیاد خود را در هر قرارداد مشاهده کنیم.

شرح : تابعی به نام portfo در قسمت تابع عمومی (ساخت ستون / تابع عمومی) تعریف میکنیم . به این دلیل از تابع عمومی استفاده میکنیم که بتوانیم در همه قسمت ها از این تابع استفاده کنیم.

  •  آبجکتی به نام  x را تعریف میکنیم 
  •  در case مورد نظر(در اینجا مساوی نام قرارداد) آن را مقدار دهی می کنیم
  • آبجکت را به عنوان خروجی تابع  برمیگردانیم 

توضیح کارکرد switch case : از طریق دستور   switch نام نماد را چک می کنیم و در case  برابر با نام نماد  x را مقداردهی می کنیم در این مثال قیمت، تعداد، ...  (هر تعداد فیلد نیاز داشته باشیم می توانیم به آبجکت x اضافه و مقدار دهی کنیم) و در آخر  آن را بر می گردانیم (return) 

دستور switch یه حالت پیش فرض یا default هم  داره که زمانی فراخوانی میشه که شرط هیچ یک از case ها صحیح نباشه  . در این حالت مقدار دیفالت که در مثال ما "" (خالی) هست برگردانده میشه  (یعنی نماد جزو پرتوفوی ما نیست)


function portfo(){

var x = new Object();

switch(Option.Namad){

case"ضهرم1226": x.sale=true; x.count=10; x.price=8000; x.note='شرح خرید1226'; return x; break;

case"ضهرم1218": x.sale = false; x.count=5;x.price=16000; x.note='شرح فروش 1218' ; return x;break;

 default: return "";break;

}}


استفاده از تابع  

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

  1. آبجکت x : درصورتی که سطر متناظر یا Option.Namad در case باشه 
  2. "" یا خالی : Option.Namad جزو case های تابع نیست


مثال ساده : یک ستون به نام پوزیشن ایجاد کنید و کد زیر را در قسمت  فرمول بنویسید

let x = portfo();

let test= '';

if (x != ''){

if(x.sale) test += 'خرید ';

else test +='فروش ';

test += ' تعداد: ' + x.count;

test += ' قیمت: ' + x.price;

}

test;

و در قسمت tooltip :


portfo().note

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


مثال محاسباتی : محاسبه سود و زیان 

ستونی به نام سود/زیان ایجاد کنید  و کد زیر را در قسمت فرمول بنویسید 

let x = portfo();

let profit = '';

if (x != ''){

if(x.sale) 

   profit = ((Option.TI.LastPrice - x.price) * x.count) * Option.Size;

else profit = ((x.price - Option.TI.LastPrice) * x.count )* Option.Size;

}

profit;

توضیحات 

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