فیلتر نویسی چیست؟
فیلترنویسی استفاده از شروط و دستورات برنامه نویسی برای فیلتر کردن تعدادی نماد از میان صد ها نماد بازار بورس است. بوسیله فیلتر نویسی می توانیم شرایط تکنیکالی ، تابلوی معاملات ، سابقه و دیگر ویژگی های مورد نظرمان را روی نماد ها اعمال کنیم و به جای بررسی بیش از ۵۰۰ نماد بازار بورس ، تعدادی از نماد های دارای ویژگی مورد نظرمان را بررسی کنیم.
فیلترنویسی در سایت شرکت مدیریت فناوری بورس تهران انجام میشود و زبان مورد استفاده JavaScript است. برای تسلط به فیلترنویسی ابتدا باید با قواعد و ساختار های برنامه نویسی آشنا شد. در این دوره بطور کامل ساختار های مورد نیاز آموزش داده میشود.
یکی از کاربردهای مهم فیلترنویسی دسترسی به سابقه معاملات هر نماد است. به وسیله فیلدهای سابقه ، قیمت های سهام تا 60 روز کاری قبل قابل دسترس خواهد بود. اطلاعات معاملات حقیقی و حقوقی هم از دیگر بخش های مفید فیلترنویسی بورس است.
در این مجموعه آموزشی چه اهدافی دنبال می شود؟
در ابتدا با فیلترنویسی و قسمت های مختلف دیده بان بورس سایت بورس آشنا میشویم. سپس به معرفی فیلدها و عملگرها میپردازیم. فیلدها همان ویژگی ها و مشخصه های هر نماد هستند. بعنوان مثال حجم معاملات با فیلد (tvol) نمایش داده میشود یا هرجا در فیلتر فیلد (pc) به کار برده شود منظور قیمت پایانی نماد است. از ترکیب فیلد ها و عملگرها شروط ساخته میشوند و ترکیب شروط با هم، فیلتر ساده ایجاد میکند که اولین قالب فیلتر نویسی است.
بعد از آموزش و مثال های متعدد از قالب ساده، ساختاری های برنامه نویسی را آموزش میبینیم. بعد از یادگیری ساختار های برنامه نویسی مثل حلقه ها و ساختار های تصمیم، قالب کد نویسی را آموزش میدهیم که فیلترهای پیشرفته تر در این قالب قابل پیاده سازی هستند.
بعنوان مثال فیلتر محاسبه میانگین حجم ماه یک نماد در قالب ساده بیش از 20 دستور و عمل جمع نیاز دارد اما در قالب کد نویسی با یک ساختار حلقه دو خطی قابل انجام است. و در نهایت در پایان دوره فیلترهای آماده و کاربردی معرفی میشوند
داشتن دید وسیع تر در فیلتر نویسی
توجه داشته باشید که دانش فیلتر نویسی باعث می شود دید وسیع تری نسبت به سهام های بازار داشته باشید و شما را نسبت به کسانی که فیلتر نویسی بلد نیستند در جایگاه بالاتری قرار می دهد. ولی دقت کنید که دانستن آن برای همه لازم نیست چون مفاهیم پیچیده برنامه نویسی دارد اما شما باید حداقل استفاده از فیلتر های کاربردی را بلد باشید تا در معاملات خود بهتر عمل کنید.
نمایی از این مجموعه
ردیف | عنوان | لینک | حجم | زمان |
1 | آشنایی با فیلتر نویسی و دیده بان سایت tsetmc | نمایش | 113MB | 21min |
2 | فیلدها و عملگرها | نمایش | 121MB | 46min |
3 | شروع فیلترنویسی، قالب ساده | نمایش | 141MB | 37min |
4 | اطلاعات حقیقی و حقوقی | نمایش | 91MB | 36min |
5 | سابقه قیمت ها | نمایش | 90MB | 42min |
6 | فیلترهای کاربردی | نمایش | 170MB | 58min |
7 | قالب کدنویسی | نمایش | 49MB | 24min |
8 | ساختارهای تصمیم و کنترل (If) | نمایش | 92MB | 35min |
9 | تمرین | نمایش | 72MB | 30min |
10 | ساختار Switch | نمایش | 51MB | 21min |
11 | ساختار For | نمایش | 55MB | 31min |
12 | ساختار While | نمایش | 22MB | 11min |
13 | قالب شخصی و فیلدهای کاربر | نمایش | 68MB | 22min |
14 | رفع اشکال | نمایش | 145MB | 47min |
15 | توابع شخصی | نمایش | 39MB | 18min |
16 | فیلتر اندیکاتور | نمایش | 50MB | 18min |
17 | توابع آماده و آمار های کلیدی | نمایش | 52MB | 17min |
18 | ایجاد سبد و خطایابی | نمایش | 66MB | 13min |
19 | پرسش و پاسخ + فیلتر پولبک و کد به کد | نمایش | 228MB | 55min |
پیوست | فیلترهای دوره | دانلود | کم | |
پیوست | راهنمای فیلدها و عملگرها | دانلود | کم |
201 دیدگاه
poorya
سلام خیلی ممنون از آموزش عالی که قرار دادین بقیه مطالب کی گذاشته میشه؟
satiar
سلام و عرض ادب..سپاس از استاد گرانقدر..مطالب بسیار عالی و منسجم ارائه می شود.بی صبرانه منتظر تکمیل قسمت ها هستیم.استاد عزیر از یک برنامه شبیه paint استفاده می کنید..میشه اسمشو بگین؟
سپاس از فراچارت
مجتبی شمس نجاتی
در پاسخ به: satiarسلام و ممنون از محبت شما
برنامه ضبط ApowerRec هست که ابزار رسم هم داره در حین ضبط.
satiar
در پاسخ به: مجتبی شمس نجاتیسپاس استاد عزیز
moha
با عر
moha
در پاسخ به: mohaبا عرض سلام در فایل ۶ من خروجی اکسل از بازار گرفتم و طبق فرمایش استاد ضرب حجم در تعداد رو انجام دادم که برای بعضی سهام ها مقدار عددی میده اما برای بعضی #value مینویسه. این چرا اینطوری میشه برای من ولی برای استاد نشد؟
مجتبی شمس نجاتی
در پاسخ به: mohaسلام اندازه ستون رو بزرگتر کنید تا اعداد درش جا بگیره. اگر کوچکتر باشه به شکل #### نشون میده
آقا رضا
درود بر سایت فراچارت و استاد گرامی.
لطفا فیلتر ها رو که آموزش می دین
یک فیل وورد هم قرار بدین تا قابلیت استفاده باش به همراه توضیحات.
سپاسگزار از شما خیلی تمرین کردم تا الان و خیلی درس خوبیه
Amir
درود جناب شمس عزیز و دوستان فراچارت.
پیش بینی میکنید آموزش این دوره چه موقع تکمیل میشه؟
mh
سلام و دورد خدمت آقای شمس استاد گرامی
سوالی داشتم درمورد اینکه چطور می تونیم نسبت خریدار به فروشنده رو حساب کنیم که در فیلد های در قسمت دیدبان به ما اون نسبت را نشون بده البته یک قسمتی از اموزش ها بهش اشاره میکنید ولی کامل نمی گید که چطور باید این کار رو باید انجام داد.
حجم خریدار / تعداد خریدار تقسیم بر حجم فروشنده / تعداد فروشنده جواب این رو در قسمت فیلتر به ما ایراد میگیره ممنون میشم راهنمایم کنید تشکر فراوان
مجتبی شمس نجاتی
در پاسخ به: mhسلام در درس های بعدی قسمت فیلد های کاربر گفته میشود
Reza
سلام و خسته مباشید به تیم فراچارت و استاد گرامی(یا بهتر بگم همه عزیزانی که زحمت تهیه آموزشها رو می کشند) سوال من در مورد اون عدد میانگین حجم ماه هست.
منظور از ماه دقیقا چند روز قبل هست؟
به عبارت دیگه اگه بخواهیم فیلتر اونو بنویسیم باید از امروز [۰] به چند روز قبل برویم و میانگین رو حساب کنیم(تا [۲۱] یا [۲۲] یا [۳۰])
جالب اینه که همه اینها رو حساب کردم ولی به عدد توی سایت نرسیدم!!!!
مجتبی شمس نجاتی
در پاسخ به: Rezaسلام محاسبه سایت ظاهرا درست نیست یا طور دیگری حساب کردن که بی اطلاعیم.
از ۰ تا ۲۹ میشه ۳۰ روز و در درس حلقه ها گفته میشه
امیرمسعود
سلام آقای شمس
من با خطای زیر مواجه میشم برای نوشتن فیلتر پوشا
Cannot read property ‘1’ of undefined
چندین بار فیلتر رو چک کردم و دقیقا مشابه فیلتری هست که آموزش دادید در جلسه پنجم.
ممنون میشم راهنمایی کنید.
مجتبی شمس نجاتی
در پاسخ به: امیرمسعودسلام سابقه باید فعال باشه ، مرورگر آپدیت و فیلتر هم دقیقا درست بنویسید اکر مشکل حل نشد از سایت هست
hossein
سلام،
سپاس از آموزش بسیار عالی و کاربردی شما.
من وقتی میخوام خروجی اکسل بگیرم هیچ واکنشی نشون نمیده و فقط خروجی html رو میگیره، ممنون میشم راهنمایی بفرمایید.
مجتبی شمس نجاتی
در پاسخ به: hosseinفایل رو دانلود یا ذخیره کنید و بعد با اکسل باز کنید
poorya
سلام امکان داره فیلتر پولبک رو هم آموزش بدین؟
morteza
سلام
از زحمات سایت فراچارت و آقای شمس تشکر میکنم
من تمام فیلترهایی که در مراحل آموزش اومده رو بازنویسی کردم و همگی جواب درستی میدادن اما یک فیلتر تو فایل آموزش شماره ۶ هست که در آن میخواهد سهمهایی رو پیدا کنه که حجم معاملات روز آخر از مجموع حجم معاملات ۵ روز قبل بیشتر باشه. برخی از سهم هایی که در خروجی این فیلتر نشان داده میشه به نظر درست نمیان. به عنوان نمونه سهم قشرین رو برام میاره که ویژگی فیلتر رو نداره. من فیلتر رو در روز پنجشنبه مورخ ۱۳۹۹/۰۲/۰۵ نوشتم. فیلتری که من نوشتم عینا مثل فایل آموزش هست. میشه لطف کنین نتایج این فیلتر بیشتر بررسی بفرماییدو ببینید شما هم به موارد نادرستی برخورد میکنین یا نه؟
باتشکر
morteza
مورخ ۱۳۹۹/۰۲/۰۴ صحیح است
morteza
درفایل شماره ۹، خط چهارم فیلتری که برای الگوی ستاره صبحگاهی نوشته شده به اشتباه از عبارت PriceFrst بجای PriceFirst استفاده شده که لطفاً اصلاح فرمایید.
farshadakmal
در پاسخ به: mortezaدقیقا منم خواستم همینو بگم، اما چرا با کد خطا نداد و اجرا شد؟!
morteza
در پاسخ به: farshadakmalآقای شمس توی توضیحاتشون گفتن که موچک و بزرگ نوشتن حروف و یا اشتباه نوشتن آنها باعث اعلام پیام خطا از سوی کامپایلر نمیشه. فقط اون مورد اشتباه نوشته شده درنظر گرفته نمیشه
مجتبی شمس نجاتی
در پاسخ به: mortezaبله آفرین به دقت شما. چون خطای منطقی نیست خطا نمیدهد و فقط آن شرط چک نمیشود.
پیام
با تشکر از مطالب خوبتون
اقای شمس لطفا در مورد فیلترهای کد به کد هم روشش رو بهمون آموزش بدید
حسین
با سلام و سپاس از آموزش خوبتون که از یک آموزش پولی که قبلا تهیه کردم هم خیلی بهتر هست.
می خواستم خواهش کنم در مورد فیلتر نویسی کراس تنکنسن و کیجنسن هم راهنمایی بفرمایید.
با تشکر
محمد راستی
با سلام و تشکر از آموزش عالیتون، یه سوال داشتم
خروجی اکسل به جای صفحه فیلتر شده ما خروجی کل بورس را میدهد، چه کنیم که فقط خروجی فیلتر شده و مطابق قالب ما را بدهد؟
با تشکر بسیار
amir
سلام جناب شمس
خیلی از زحماتتون ممنونم
دوره ی بسیار خوبی هست
من تا جلسه ۹ رو کامل دیدم فایلهای جدید که قرار داده میشه ؟
و یک درخواست هم داشتم که اگر ممکنه فیلترهایی مثل rsi, macd, … هم تدریس کنین
مجتبی شمس نجاتی
در پاسخ به: amirسلام ممنونم. برای یادگیری پیاده سازی فرمول اندیکاتور در کد نویسی، یکی دو تا اندیکاتور آموزش داده میشه
Mansourkhan
سلام یک دنیا ممنون از جناب شمس عالی بود من خودم برنامه نویسی خوندم برا من عالی بود مخصوصا ستاره صبح ممنون استاد
poorya
سلام بقیه آموزش ها دیگه ادامه پیدا نمیکنه؟
hamid mousavi
با سلام
ممنون از مطالب آموزشی شما
من تو بخش سابقه قیمت ها مشکلی دارم و اون هم اینه که به جای n هر عددی میزارم خطا میگیره به اون عدد هم ایراد میگیره
تو تنظیمات دیده بان هم سابقه قیمت ها فعال است.
فقط هم تو بخش سابقه قیمت ها اینجوریه تو بقیه فیلترها به اعداد داده شده ایراد نمیگیره
حتی از مثال های سایت دیده بان هم کپی میکنم باز هم ارور میده
ممنون میشم راهنمایی کنید
مجتبی شمس نجاتی
در پاسخ به: hamid mousaviسلام بعضی روز ها سابقه سایت مشکل داره
مجد
سلام و تشکر از تهیه و ارایه مطالب آموزشی
میخواستم بدونم چطوری میتوان برای قسمت اطلاعات تکمیلی/ریز معاملات فیلتر نویسی کرد؟ اگر جواب منفی است به چه طریقی میتوان این اطلاعات را استخراج کرد؟ مثلا پیدا کردن سهمی که سفارش خرید یا فروش بیش از ۱۰۰ میلیون تومانی دارد!
مجتبی شمس نجاتی
در پاسخ به: مجدسلام ممنونم خیر امکانش نیست
علیرضا
سلام خدمت جناب شمس و تشکر خاص بخاطر نحوه تدریس و تسلط کامل بر تمامی مطالب ارائه شده. اول اینکه بیصبرانه منتظر مطالب تکمیلی آموزشی شما هستم و یک سوال اینکه آیا میشه پولبک های حمایتی را به هر روشی چه تحلیل کلاسیک و چه ای چی موکو با فیلتر نویسی مشخص کرد؟ ممنون از وقتی که میگذارید.
مجتبی شمس نجاتی
در پاسخ به: علیرضاسلام تا حدودی میشه اما کاملا نمیشه گفت امکانپذیره و خطای زیادی خواهد داشت. در مورد ایچیموکو هم تمام خطوط ازجمله اسپن های ابر را با پیاده سازی فرمول میتوان نوشت
Specialview
سلام استاد بابت آموزش جذابتون متشکرم جسارتا امکانش هست فیلتر ستاره صبحگاهی رو اینجا بذارید چند باری نوشتم اما باز ارور میده ممنون میشم
مجتبی شمس نجاتی
در پاسخ به: Specialviewسلام در هفته اخیر سایت مشکل داشته و خطای شما هم احتمالا به همین دلیل بوده
Specialview
در پاسخ به: مجتبی شمس نجاتیtrue==function()
{
if[ih][2].PriceFirst=[ih][0].PDrCotVal
return false;
var c1len;
var c2len=[ih][2].PriceFirst-[ih][2].PDrCotVal;
if([ih][1].PriceFirst=[ih][2].PDrCotVal)
return false;
}
else if([ih][1].PriceFirst>[ih][1].PDrCotVal)
{
c1len=[ih][1].PriceFirst-[ih][1].PDrCotVal;
if([ih][1].PDrCotVal>=[ih][2].PDrCotVal)
return false;
}
if(c2len>=(2*c1len)&&[ih][0].PriceFirst[ih][2].PDrCotVal)
return true;
}
()
سلام استاد ممنون میشم اگر بتونید بگید کجاش ایراد داره؟متشکرم واقعا
فروغ
با سلام و عرض خداقوت و دست مریزاد. کاش تمام مدرسین چنین قدرت بیان فوق العاده ای میداشتند. واقعا این حجم از تسلط و ساده گویی بدون اتلاف وقت و یا تندگویی بی نظیره. من خیلی از نحوه آموزش استاد شمس لذت میبرم و منتظر تکمیل دوره هستم. از اینکه دانسته های حاصل از سالها تجربه رو به رایگان در اختیار ما میگذارید صمیمانه سپاسگزارم.
فروغ
استاد جلسه نهم مثال ستاره صبحگاهی خط اول در نوشتن قیمت نخستین یک آی جا افتاد (frst به جای first) اما برنامه خطا نداد که خب چون خطا منطقی نبود درسته اما چرا برنامه کار کرد؟
مجتبی شمس نجاتی
در پاسخ به: فروغسلام از محبت شما ممنونم بله همانطور که فرمودید چون خطای منطقی نبوده خطا نداده و برنامه کار کرده اما اون شرط بررسی نمیشه