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

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

@Optionbaaz

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

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

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

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

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

مثال های از دسترسی به قراردادهای هم گروه

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

تابع قراردادهای هم گروه OptionSE

این تابع کلیه قراردادها با سررسید و نماد پایه یکسان را برمی گرداند همچنین از طریق این تابع می توان به قراردادهای با اعمال بالاتر و پایین تر زنجیره دسترسی پیدا کرد(Option Same Expiration)

پیشنهاد می کنیم برای درک مفهوم آرایه ای تابع OptionSE ویدیو  "توضیح تابع OptionsSE  و دسترسی به زنجیره قراردادها" را مشاهده کنید . 

در این مقاله ما بخشی که کلیه قراردادها را برمی گرداند توضیح خواهیم داد  . 

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

فرض کنید در جدول دیده بان 10 تا خروجی دارید که یکی از آنها قرارداد ضستا1211 می باشد  . دارایی پایه این قراداد شستا و سررسید آن 1402/12/9 می باشد  . وقتی تابع OptionSE روی این سطر اجرا میشه کلیه قرادادهایی که دارایی آنها شستا و تاریخ سررسیدشان 1402/12/9 می باشد رو بر می گرداند (اختیار خرید و فروش) . در حقیقت این تابع و موارد روی هر سطر با مقادیر همان سطر اجرا می شود

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

مثال از while: نمایش کلیه قراردادهای هم گروه

let result = '';

index = 0;

while (OptionSE()[index] != undefined) {

//شرط در صورت نیاز

result += ShowDetail(OptionSE()[index].Namad )

index++;

}

result;

..


  • index همان اندیس یا ایندکس در حلقه می باشد که مقدار آن از 0 شروع و تا اندازه قرارداد منهای 1 قرارداد می تواند باشد . برای مثال اگر زنجیره 10 تا قرارداد داشته باشه اندیس از 0 تا 9 می باشد و از طریق این اندیس ها می تونیم به قرارداد دسترسی داشته باشیم . 
  • دستور OptionSE()[index] != undefined برای این استفاده که در حلقه while ما تعداد حلقه  رو مشخص نمی کنم   ولی شرطی برای اجرا حلقه  میزاریم که در اینجا تهی یا بی مقدار نبودن OptionSE()[index] هست . 
  • index در ابتدار صفر هست و در درون حلقه یکی به مقدار آن اضافه می شود(++index) تا کل زنجیره پیمایش بشه  
  • جنس  OptionSE()[index] از نوع Option هست یعنی هر ویژگی که Option داره مثل Option.TI.LastPrice یا Option.Type رو دارا می باشه . در کد بالا به اسم نماد OptionSE()[index].Namad دسترسی داریم

به زبان ساده کد بالا می گه اگر قرارداد با اندیس index  مقدار داشت  برو داخل while و کدها رو اجرا کن و یکی به مقدار index اضافه کن و اگر مقدار  نداشت یعنی کل زنجیره پیمایش شده و  دستورات بعد از حلقه اجرا خواهند شد .

مثال for : نمایش کلیه قراردادهای هم گروه

let result = '';

for(index = 0; index < OptionSE().length ; index++)

{ //if ..

result += ShowDetail(OptionSE()[index].Namad )

}

result;

  • تفاوت for با while در این هست که  در ابتدای مقدار اولیه و انتهای حلقه مشخص هست 
  • کد بالا با اندیس صفر شروع میشه و تا زمانی که اندیس کوچکتر از اندازه تعداد زنجیره باشه ادامه پیدا میکنه
  • در هر پیمایش یکی به مقدار index اضافه میشه و مقدار ShowDetail به result اضافه میشه 
  • جنس  OptionSE()[index] از نوع Option هست یعنی هر ویژگی که Option داره مثل Option.TI.LastPrice یا Option.Type رو دارا می باشه . در کد بالا به اسم نماد OptionSE()[index].Namad دسترسی داریم

معنی کد += 

x += y is equivalent to x = x + y


مثال : پیدا کردن و دسترسی به اطلاعات قراردادی که  ATM هست 
همه قراردادهای هم گروه رو از طریق OptionSE بر می گردانیم و با حلقه آنها رو پیمایش می کنیم و شرط ATM بودن رو تست می کنیم و و در صورت وجود  اندیس آن قرارداد رو بر می گردانیم

var index = 0;

var atmIndex = undefined;

while (OptionSE()[index] != undefined) {

if (OptionSE()[index].State == "ATM") atmIndex = index;

index++;

} if (atmIndex != undefined)

ShowDetail(OptionSE()[atmIndex].Namad);

else 'زنجیره قرارداد atm ندارد';


  • اگر شرط ATM برقرار باشه اندیس آن را در atmIndex  ذخیره می کنیم  و  بعد از پایان حلقه  نام آن را نشان می دهیم در غیر این صورت پیام زنجیره قرارداد ATM ندارد نمایش داده میشه
  • جنس  OptionSE()[atmIndex]    از نوع Option هست یعنی هر ویژگی که Option داره مثل Option.TI.LastPrice یا Option.Type رو دارا می باشه .



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