جمعه, 30 مرداد 1394 ساعت 18:58

آموزش فیلترنویسی ( آشنایی با قالب های کدنویسی) - بخش چهارم

نوشته شده توسط
این مورد را ارزیابی کنید
(1 رای)

امروز با بخش چهارم آموزش فیلترنویسی در خدمتتون هستم. قبل از شروع مبحث چهارم یک نکته باید گفته بشه و اونم اینه که وقتی بخوایم یک سری اطلاعات رو برای تمامی نمادها (دقت کنید گفتم تمامی نمادها) در دیده بان بازار داشته باشیم از قالب شخصی استفاده می کنیم و با فیلتر خاصی که برای این کار نوشته ایم مقادیر cfield0 و cfield1 و cfield2    را مقداردهی میکنیم. اما وقتی بخوایم یک سری سهم با شرایط خاص رو از بین کل سهام بکشیم بیرون (مثلا سهامی که در آستانه صف خرید هستن) از فیلتر استفاده می کنیم ونیاز به ساخت قالب شخصی نیست. در این مبحث میخوایم با قالب های کد نویسی آشنا بشیم. اصلا ببینیم چی هست این قالب ها و چه تفاوتی داره ؟

خب تا حالا هر چی برنامه نوشتیم در قالب ساده بوده. فیلترهای 1 تا 17 که در جلسات قبل داشتین همه در قالب کد ساده نوشته بودند.

 

 خب در قالب ساده از دستورات و توابع پیش ساخته خود سایت استفاده می کنید. انواع و اقسام دستورها توابع رو در آموزش های قبلی باهاشون آشنا شدیم. مثلا دستور  ct).Sell_CountI) تعداد فروشنده حقیقی سهم رو به ما نشون میده و یا tvol حجم معاملات رو به ما نشون میده. حالا فرض کنیم بخواهیم حجم میانگین معاملات سه روز گذشته رو داشته باشیم و یا میانگین حجمی 14 روزه رو با میانگین حجمی 3 روزه مقایسه کنید. ببینید آیا حجم معاملات سهم تغییری کرده؟ خب برای این کار شما لازم هست که این دستور رو توسط تابعی خودتون تعریف کنید. همچنین میتونیم از دستورات حلقه و شرط و تعریف متغیرها علاوه بر امکاناتی که قالب ساده در اختیار ما قرار میده استفاده کنیم... بذارید چند تا قالب ساده و کد نویسی با هم داشته بنویسیم تا بیشتر آشنا بشیم:

 

بدنه کلی قالب کد نویسی:

 

true==function()

{

 محل نوشتن توابع دلخواه

if (محل نوشتن شرط)

{

return true;

}

else

{

return false;

}

}()

بدنه کلی در شکل زیر نشان داده شده است

 funcFilter

 به ترتیب خط ها توضیح میدم:

 1,2 که شروع برنامه ما هستن و در تمامی برنامه ها به همین شکل هستن.

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

خط 9 تا 12 شرط اجرای صحیح برنامه هست.... یعنی شرطی که داخل پرانتز جلوی if  میذاریم اگه درست باشه مقدار true رو برمیگردونه. 

از خط 14 تا 19 هم که برای همه برنامه ها همین طوری هست. البته من چون اطلاعات برنامه نویسی دوستان شاید کم باشه بسیار مطالب رو ساده عرض میکنم.

خب پس بسیار راحته. ما شرط هامون رو تو دل دستور IF  میذاریم. اگه نیاز به تابع خاصی هم داشتیم از فرمت مشخص شده تو شکل استفاده می کنیم و تابع مورد نظر رو می نویسیم. 

 

برنامه شما می بایست دو مقدار TRUE یا false را برگرداند. در صورت برگشت مقدار true یعنی نماد مورد نظر در دیده بان نمایش داده شود و مقدار false یعنی  نماد نمایش داده نشود. در برنامه شما ابتدا می بایست توابع خود را تعریف کنید سپس می توانید از آن توابع در برنامه خود استفاده کنید.

حالا همون فیلتر 1 رو میخوام با این روش بنویسم ببینم چی میشه

true==function()

{

if((pd1)==(tmax) && (qd1)>=5*(bvol))
{

return true;

}

else

{

return false;

}

}()

خب چون فیلتر 1 بسیار ساده بود و نیاز به تابعی نداشتیم براحتی همون شرط ها رو در داخل پرانتز if میذاریم. نتیجه این فیلتر با فیلتر شماره  1 دقیقا برابر خواهد بود.

در بخش بعدی یک مثال فیلتر با قالب کد نویسی که در اون تابع هم استفاده شده باشه را آموزش خواهیم داد.

 

خواندن 1721 دفعه آخرین ویرایش در جمعه, 30 مرداد 1394 ساعت 21:28
برای ارسال نظر وارد سایت شوید