۱۴۰۰/۰۱/۰۴

فیلترنویسی در بورس

فیلترنویسی یکی از مهم‌ترین ابزارها برای معامله سهام است.

آموزش فیلتر نویسی در بورس

یکی از سوالات رایج بین سرمایه‌گذاران این است که چطور سهم مورد نظر خود را پیدا کنند. بررسی کردن تمامی سهم‌های وجود در بازار، امری غیرممکن است. اگر هم ممکن باشد چندین روز از وقت ما را به خود اختصاص می‌دهد. شاید در آن موقع سهمی که روز اول بررسی کردیم، دیگر شرایط اولیه را نداشته باشد و تغییر وضعیت دهد. برای رفع این مشکل می‌توانیم از فیلترنویسی استفاده کنیم.

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

فیلترنویسی چیست؟

فیلترنویسی مثل استفاده از یک صافی برای جدا کردن سهم‌هایی با ویژگی‌های خاص است. با استفاده از این روش می‌توانیم در مدت‌زمان کوتاهی سهم‌های بازار را گلچین کرده و فقط سهم‌های مورد نظر خودمان را بررسی کنیم. این کار را می‌توان در زمان بازار یا خارج از تایم آن، انجام داد.

در واقع با فیلتر‌نویسی تعیین می‌کنیم که چه اطلاعاتی و با چه ویژگی‌هایی به ما نشان داده شوند. برای این کار ابتدا یک سری داده و دستور را در قالب کد وارد سیستم می‌کنیم. سیستم مطابق با دستورات ما، سهم‌هایی را که با آن همخوانی دارند انتخاب می‌کند و به ما نشان می‌دهد.

پیش از این که وارد مباحث آموزش فیلترنویسی شویم، باید پیش‌زمینه‌ای در ارتباط با آن داشته باشیم که در ادامه به آن اشاره خواهیم کرد.

برای تعریف فیلترهای دلخواه خود چه کنیم؟

شرکت مدیریت فناوری بورس تهران، شرایطی را ایجاد کرده تا کاربران بتوانند با استفاده از امکانات خودِ سایت، بدون نیاز به استفاده از نرم‌افزارهای جانبی و با توجه به اهدافشان، سهم‌های مدنظر خود را گلچین کنند. برای فیلترنویسی ابتدا وارد سایت Tsetmc.com می‌شویم.

به تصویر زیر توجه کنید. در قسمت بالا سمت چپ، یک‌سری گزینه دیده می‌شود. یکی از گزینه‌ها که به شکل جدول است، دیده‌بان نام دارد، آن را انتخاب می‌کنیم.

فیلترنویسی در بورس

معرفی اجزای دیده‌بان بازار

بعد از انتخاب دیده‌بان، تصویر زیر را خواهیم دید. همانطور که می‌‌بینید، زبانه‌ای در بالای صفحه وجود دارد که ما آن را از ۱ تا ۹ شماره‌گذاری کرده‌ایم. در ادامه با هم بررسی می‌کنیم که هر کدام از این خانه‌ها چه اطلاعاتی به ما می‌دهند.

فیلترنویسی در بورس

شماره یک - خانه

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

شماره دو - جستجو

شماره دو که به‌شکل یک ذره‌بین نمایش داده شده، مخصوص جستجو کردن نماد سهم‌ها است. با وارد کردن نام نماد در این بخش، تمامی اطلاعات مربوط به آن نماد نشان داده می‌شود.

شماره سه - تنظیمات

با انتخاب شماره سه، جدول زیر نمایش داده می‌شود. این بخش مربوط به تنظیمات است. اگر گزینه‌ی فعالی در این بخش وجود داشته باشد رنگ آن به آبی تغییر می‌کند.

آموزش فیلترنویسی در بورس

اولین موردی که در این بخش می‌توانید تنظیم کنید، زمان بروز‌رسانی داده‌ها است. شما می‌توانید مشخص کنید که هر چند ثانیه یک‌بار اطلاعات بروز‌رسانی شوند.

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

باقی گزینه‌های موجود در این بخش نیز به همین منوال عمل می‌کنند. برای مثال می‌توانید مشخص کنید که سهام کدام بازارها (بورس، فرابورس یا هر دو) در دیده‌بان شما، نمایش داده شوند.

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

در قسمت اطلاعات تکمیلی بهتر است، هر سه گزینه را فعال کنید. چون برای نوشتن برخی از فیلترها در آینده نیاز است که این قسمت‌ها فعال باشند.

در بخش آخر این قسمت می‌توانید گروهی خاص را برای دیدن انتخاب کنید. مثلا می‌توانید مشخص کنید تنها سهام گروه دارویی نمایش داده شود.

بعد از اتمام کارتان با این بخش اگر می‌خواهید صفحه را به حالت قبل برگردانید، کافی است دوباره به بخش تنظیمات بروید و با انتخاب همه‌ی نمادها و یا نمادهای معامله‌شده در قسمت نحوه‌ی نمایش دیده‌بان بازار، صفحه به حالت قبلی خود باز‍می‌گردد.

شماره چهار – مرتب‌سازی

در قسمت مرتب‌سازی می‌توانید مشخص کنید که داده‌ها بر چه اساسی مرتب شوند و جهت مرتب‌سازی آن‌ها چگونه (صعودی یا نزولی) باشد.

شماره پنج - قالب نمایش

قالب نمایش، به حالت و فرمی می‌گویند که اطلاعات در صفحه به شما نشان داده می‌شوند. در این بخش می‌توانید از قالب‌های پیش‌فرض سایت (جدول کلاسیک، قیمت، عرضه و تقاضا و...) و یا قالب‌های شخصی سازی شده استفاده کنید.

منظور از قالب‌های شخصی، قالب‌هایی است که خودتان در آن مشخص می‌کنید، چه اطلاعاتی و به چه شکلی به شما نمایش داده شوند. برای مثال شما دوست دارید فیلدهای قیمت خرید و فروش را بعد از فیلد نماد ببینید، می‌توانید در این قسمت قالب شخصی خودتان را بسازید.

آموزش فیلترنویسی در بورس

در ادامه مطلب، پیش از این‌که چگونگی نوشتن فیلتر از طریق کدنویسی را توضیح دهیم، در رابطه با  چگونگی ساخت قالب شخصی صحبت خواهیم کرد.

شماره شش - مشاهده سریع

در صورت انتخاب این گزینه، با انتخاب هر نماد، جزئیات و اطلاعات آن در سمت چپ دیده‌بان بازار نمایش داده می‌شود.

شماره هفت – فیلتر

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

شماره هشت - خروجی

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

شماره نه – راهنمای دیده‌بان بازار

گزینه نه که به شکل یک علامت سوال است، یکی از مهم‌ترین بخش‌های دیده‌بان بازار است. بخش راهنما اطلاعاتی نظیر قالب کد‌نویسی، قالب و فرمت فیلتر و... در اختیار شما می‌گذارد.

راهنمای دیده‌بان بازار دارای ۱۵ قسمت مختلف است که هر کدام، گزینه‌ای متفاوت را برای تسهیل فیلتر‌نویسی معرفی می‌کنند. بخش ۱ تا ۴ به‌طور خلاصه همان چیزی است که تا اینجای مقاله گفته شده است.

فیلتر نویسی در بورس

معرفی اجزای جدول راهنما

در رابطه با امکانات و تنظیمات دیده‌بان در ابتدای مقاله صحبت کردیم. همچنین گفتیم باند جانبی چیست و به چه کاری می‌آید. اما در رابطه با مورد پنجم و سایر گزینه‌ها صحبت نکردیم. در ادامه با هم مرحله به مرحله این موارد را بررسی می‌کنیم.

قالب و فرمت فیلترنویسی

دو قالب کلی برای فیلتر‌نویسی وجود دارد، قالب ساده و قالب کدنویسی.

قالب ساده

قالب ساده، برای نوشتن دستورات ساده است. در این روش شما می توانید از فیلد‌های اطلاعاتی، عملگرها و توابع از پیش‌ساخته استفاده کنید. هر فیلتر می‌تواند از تعدادی شرط تشکیل شود که با عملگر های and , or از هم جدا می‌شوند.

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

اگر دستور وارد شده درست بود می‌توانید با زدن دکمه ثبت، سهامی که مشخصات دستور شما را داشت مشاهده کنید.

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

برای این کار ابتدا وارد قسمت فیلتر نویسی می‌شویم. بعد از انتخاب فیلتر جدید، دستور مورد نظر را وارد می‌کنیم.

(pl) > (PC)، در این مثال pl مخفف کلمه price last است که به آن قیمت آخرین معامله نیز می‌گویند. pc مخفف price close است که قیمت پایانی سهم را نشان می‌دهد. این دستور به سیستم می‌گوید سهامی که قیمت آخرین معامله‌اش بیشتر از قیمت پایانی بوده را به من نشان بده. اگر سهمی این ویژگی را داشت، احتمال می‌رود که قیمتش در روز بعد مثبت باشد.

اگر بخواهیم دستوری دیگر به دستور قبلی خود اضافه کنیم، باید بعد از دستور اول، دو علامت && بگذاریم و دستور بعدی را وارد کنیم.

برای مثال می‌خواهیم بگوییم سهامی که قیمت آخرین معامله‌اش بیشتر از قیمت پایانی است و eps آن نیز بیشتر از ۵۰۰ تومان است را به ما نشان بده.

&& (pl) > (PC)

۵۰۰۰ < (eps)

قالب کدنویسی

در این روش علاوه بر مواردی که در بخش قالب ساده می‌نوشتید، می‌توانید برنامه خود را بنویسید. در این برنامه می‌توانید توابع جدید بسازید، شرط جدیدی اعمال کنید و... .

قالب کلی کدنویسی به‌صورت زیر است.

true == function () {
var h1 = 0;
for (i=0; i<=20; i++) {
h1 = h1 + [ih][i].QTotTran5J;
}
var s1 = h1 / 21;
a = [is50] / [is58];
b = [is70] / [is78];
sa = a * ([is1]/[is5]);
sb = b * ([is1]/[is5]);
if ( (ct).Buy_I_Volume > s1 * 1.5 && ( (ct).Buy_I_Volume / (ct).Buy_CountI ) > ( (ct).Sell_I_Volume / (ct).Sell_CountI ) * 3 && sa-sb >=0 ) {
return true;
}
}()

برای نوشتن یک دستور جدید، ابتدا این قالب را از قسمت راهنما سایت کپی کرده و در قسمت فیلتر‌نویسی جایگذاری می‌کنیم، تا بتوانیم بدون هیچ اشتباهی دستور مورد نظر را بدهیم. می‌شود این قالب را کپی هم نکرد و به‌طور حفظی آن را نوشت، اما احتمال خطا در این روش بیشتر است. برنامه شما می‌بایست دو مقدار true و یا false را برگرداند. در صورت برگشت مقدار true یعنی نماد مورد نظر در دیده‌بان نمایش داده شود و مقدار false یعنی نماد نمایش داده نشود. برای نوشتن یک دستور خاص ابتدا باید توابع خود را تعریف کنید. سپس می‌توانید از آن توابع در برنامه خود استفاده کنید. در ادامه خواهیم گفت که این علائم اختصاری و عملگرهای قابل استفاده را چگونه بیابیم.

انواع عملگرها در فیلترنویسی

عملگرهای محاسباتی

از عملگرهای محاسباتی قابل استفاده در فیلترنویسی می‌توان به جمع، تفریق، ضرب، تقسیم و باقیمانده تقسیم اشاره کرد. مثلا اگر بخواهیدبگویید تا سیستم، سهم‌هایی که مجموع قیمت پایانی دیروز و امروزشان بیشتر از ۱۰۰۰ ریال باشد، را به شما نشان دهد؛ به این صورت می‌نویسیم.

(py) + (pl) > 1000

فیلترنویسی در بورسانواع عملگرها

عملگرهای منطقی

همان‌طور که در جدول بالا می‌بینید، تنها سه نوع عملگر منطقی «و»، «یا» و «نقیض» در این نوع فیلتر‌نویسی کاربرد دارد. توجه داشته باشید که هنگام استفاده از دو عملگر منطقی «و» و «یا» بین دو جمله، باید از دو علامت && و || استفاده کرد.

برای مثال اگر بخواهیم به سیستم بگوییم سهم‌هایی را به من نشان بده که آخرین قیمت (PL) آن‌ها و قیمت پایانیشان (PC) بیشتر از ۱۰۰۰ باشد، از دستور زیر استفاده می‌کنیم:

(pl) > 1000 && (pc)>1000

عملگرهای رابطه‌ای

عملگرهایی مانند مساوی، کوچکتر، بزرگتر، کوچکتر مساوی، بزرگتر مساوی و مخالف از عملگرهای پرکاربرد رابطه‌ای هستند.

همان‌طور که در استفاده از دو عملگر منطقی «و» و «یا» گفتیم، برای استفاده از عملکرد رابطه‌ای مساوی نیز باید از دو علامت مساوی به‌صورت پشت‌ سر هم استفاده کرد.

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

(pl) == (pc)

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

(pl) != (pc)

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

توابع از پیش آماده در فیلتر

انواع توابع

توابع از پیش آماده شده در سایت Tsetmc محدود است. در ادامه قصد داریم چند عدد از این توابع را معرفی کنیم.

اولین تابع از پیش‌ آماده در سایت که در جدول بالا هم آن را می‌بینید، تابع قدر مطلق Math.abs(x) است.

این تابع دستور می‌دهد که قدر مطلق، عددی را که بجای ایکس قرار دارد به من نشان بده. ما می‌توانیم بجای ایکس هر عبارت دیگری مثل یک معادله قرار دهیم.

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

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

(cfield0)= math.abs(x)

برای تمامی فرمول‌های موجود در جدول بالا به همین صورت و در همین قالب، فرمول‌ها را تعریف می‌کنیم.

برای ایجاد ستون مورد نظر در قالب نمایش، اگر محتوایی که می‌خواهیم در آن ستون نشان داده شود، به‌طور پیش‌فرض در آن قسمت تعریف نشده باشد گزینه cfield0 (در رابطه با چگونگی ایجاد این فیلدها در ادامه توضیح دادیم) را انتخاب می‌کنیم.

بعد وارد قسمت فیلتر‌نویسی می‌شویم و به تعریف اطلاعاتی که می‌خواهیم در آن خانه نشان داده شود می‌پردازیم. در مثال بالا می‌گوییم قدر مطلق عدد منفی دو را مثبت کن، سپس مثبت شده آن را در cfield0 نمایش بده.

ممکن است شما بخواهید تابعی را معرفی کنید که در سایت تعریف نشده است. راهکار چیست؟

همان‌طور که گفتیم برای این‌که دیده‌بان اطلاعات خاصی را به ما نشان دهد، ابتدا وارد قالب نمایش می‌شویم و ستون‌های مدنظرمان را انتخاب می‌کنیم. توجه داشته باشید که شما تنها می‌توانید ۳ ستون جدید که در سیستم تعریف نشده را تعریف کنید. بعد از ایجاد تغییرات مورد‌ نظرمان، وارد قسمت فیلتر‌نویسی می‌شویم و فیلترمان را تعریف می‌کنیم. در این قسمت می‌خواهیم نحوه تعریف یک تابع را به شما توضیح دهیم.

تعریف تابع

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

فرض کنید می‌خواهیم تابعی را تعریف کنیم که طی ۲۱ روز گذشته، میانگین کمترین قیمت را پیدا کند و سپس آن را نشان دهد. ابتدا وارد ساخت قالب می‌شویم.

در مثال زیر ابتدا یک تابع تعریف می‌شود که کمترین قیمت ۲۱ روز را حساب می کند و سپس از آن تابع در کد استفاده می شود:

true==function()
{
    var MinPrice=function(){

        var min=[ih][0].PriceMin;
        var ipos;

        for(ipos=0;ipos<21;ipos++)
                if(min>[ih][ipos].PriceMin)
                  min=[ih][ipos].PriceMin;

        return min;
    };

        if((pl)<MinPrice())
        {
        return true;
    }
        else
        {
        return false;
    }    
}()

در مثال بالا دیدید که ابتدا تابع را تعریف کردیم. بعد از بیان اسم تابع، از طریق var به توضیح متغیرها پرداختیم. متغیرها از صفر شروع می‌شوند و تا روز ۲۱ ام، یک روز یک روز به آن‌ها اضافه می‌شود.

(++for(ipos=0 ; ipos<=21 ; ipos در این قسمت می‌گوییم متغیر i از صفر شروع شود و تا روز ۲۱ ادامه پیدا کند و یک روز یک روز به آن اضافه شود.

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

حال به قسمت تعریف برنامه رسیدیم، در این قسمت تعیین می‌کنیم که در ستون‌هایمان، که در بخش قالب نمایش آن‌ها را مشخص می‌کنیم چه چیزی نشان داده شود.

در فیلتر‌نویسی تعریف برنامه کار راحتی است. اما تعریف یک تابع می‌تواند کمی دشوار باشد. قبل از این‌که شروع به تعریف یک تابع کنید، بهتر است دستوراتی را که می‌خواهید بدهید، ابتدا روی کاغذ نوشته و سپس آن را به زبان کامپیوتر برگردانید.

آموزش فیلترنویسی در بورس

فیلدهای ساده قابل استفاده در فیلتر

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

برای مثال اگر بخواهیم لیست سهم‌هایی را که بیش از ۵ درصد نوسان داشته‌اند ببینیم، از فرمول زیر استفاده می‌کنیم. به جای ۵ درصد، ۰.۰۵ هم می‌توان قرار داد.

(Pmax)-(pmin)) / (pmin) > (5/100))

دسترسی به سابقه قیمت‌ها و معاملات در فیلتر

اگر بخواهیم قیمت پایانی امروز سهم را در یک فرمول بیاوریم، با استفاده از داده‌های جدول بالا می‌توان آن را به‌صورت (pc) نوشت.

توجه داشته باشید، هنگام نوشتن دستورات برای روز جاری (امروز) باید آن‌ها را داخل پرانتز گذاشت.

اما اگر بخواهیم دستوری را بنویسیم که در آن از قیمت پایانی روز قبل استفاده شود، آن‌ها را در داخل براکت قرار می‌دهیم. دستور زیر را ببینید.

این دستور بیانگر چیست؟

همانطور که در جدول زیر می‌بینید برای دیدن سهم‌هایی که قیمتِ پایانیِ یک روز قبل آن‌ها، بیشتر از قیمتِ پایانیِ دو روزِ قبلشان باشد، از دستور زیر استفاده می‌کنیم.

[ih][0].Pclosing>[ih][1].PClosing

اگر خوب به دستور توجه کنید، خواهید دید که برای مشخص کردن روز قبل (دیروز) از عدد صفر استفاده شده است. همچنین برای تعیین قیمت پایانیِ دو روز پیش از عدد ۱ استفاده کردیم. به‌طور کلی باید دقت کنیم که برای دستور دادن جهت بررسی اطلاعات n روز پیش، از عدد n-1 استفاده کنیم. یعنی اگر دستور را برای ۱۰ روز پیش بخواهیم بنویسیم بجای ۱۰ عدد ۹ را می‌گذاریم.

آموزش فیلتر نویسی در بورس

اطلاعات حقیقی و حقوقی در فیلتر

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

برای مثال اگر بخواهیم فرمولی بنویسیم که سهم‌هایی را که حجمِ خریدِ حقوقی در آن‌ها بیشتر از حجم خرید حقیقی باشد، به‌صورت زیر عمل می‌کنیم.

(ct).Buy_N_Volume > (ct).Buy_I_Volume

همانطور که می‌بینید در این فرمول‌ها برای نشان دادن سهامداران حقوقی از N و برای نشان دادن سهامداران حقیقی از I استفاده می‌شود.

آمار کلیدی در فیلتر

در این بخش دستورات مربوط به میانگین حجم ماه، ارزش، تعداد دفعات معامله و... آورده شده است. به‌دلیل زیاد بودن این آمار، جدول مربوط به آن در مقاله آورده نشده است. برای دیدن این جدول به بخش راهنما دیده‌بان بازار در سایت Tsetmc مراجعه کنید.

برای مثال اگر بخواهید سهم‌هایی را ببینید که میانگین حجم خرید سهام آن‌ها توسط حقیقی‌ها در سه ماه گذشته، کمتر از میانگین حجم خرید حقوقی‌ها در سه ماه گذشته باشد می‎توانید از دستور زیر استفاده کنید.

[is50] < [is54]

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

برای نوشتن دستورات مورد نظرمان ابتدا وارد دیده‌بان و سپس وارد بخش فیلتر‌نویسی می‌شویم، با انتخاب فیلتر جدید می‌توانیم دستورات مورد نظرمان را وارد کنیم. اما قبل از نوشتن فیلتر جدید می‌توانیم تغییراتی را در قالب نمایش ایجاد کنیم تا ستون‌های مد نظر ما هم نشان داده شوند.

ساخت یک فیلد یا ستون جدید

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

فیلترنویسی

ساخت قالب نمایش در فیلتر‌نویسی

همان‌طور که می‌بینید، در ستون Title که به معنی عنوان هم هست. می‌توانید نام ستون‌هایی را که دوست دارید در جدول ببینید، وارد کنید.

در ستون Data می‌توانید مشخص کنید که زیرِ عنوان‌هایی که انتخاب کردید، چه اطلاعاتی قرار بگیرد. همان‌طور که در جدول زیر می‌بینید، ما خواستیم که دیده‌بانمان تنها ۸ ستون به ما نشان دهد. دقت کنید که اگر خواستید تعداد بیشتری ستون به شما نمایش داده شود، باید عدد بالای جدول را نیز تغییر دهید.

برای مثال ما می‌خواهیم یک قالب شخصی بسازیم و به دیده‌بان سه ستون قیمت پایانی، آخرین قیمت و حجم مبنا را اضافه کنیم حتی می‌توانیم برخی ستون‌ها را حذف کنیم. نام ستون قیمت پایانی را pc و داده‌هایی که می‌خواهیم در این ستون نمایش داده شود را از قسمت data انتخاب کنیم. می‌بینید که رو‌به‌روی ستونی که اسمش را حجم مبنا گذاشتیم خانه‌ای به اسمcfield0 قرار گرفته است. دلیل این نام‌گذاری این است که داده‌هایی که می‌خواهیم در این ستون بگیرد به‌طور پیش‌فرض در قسمت data وجود ندارد و ما می‌خواهیم دستوراتی خاص برای این خانه در قسمت فیلتر‌نویسی وارد کنیم.

بعد از وارد کردن اطلاعات مد نظرمان «ذخیره قالب شخصی» را حتما بزنید. بعد از ذخیره قالب شخصی به قسمت فیلتر‌نویسی می‌رویم و داده‌ای که می‌خواهیم در خانه cfield0 نمایش داده شود را می‌نویسیم. اعتبار فیلتر جدید را می‌سنجیم اگر خطایی نداشت ثبت را می‌زنیم.

فیلترنویسی

تعریف محتویات ستون در بخش فیلتر‌نویسی

سپس صفحه زیر باز می‌شود. شما می‌توانید اطلاعات فیلتر شده را به‌صورت زیر ببینید.

مزایا و معایب فیلترنویسی

استفاده کردن از فیلترنویسی در سایت Tsetmc دارای مزایا و معایب مختلفی است.

از مزایای استفاده از فیلترنویسی در سایت، می‌توان به این اشاره کرد که دیگر نیاز به استفاده از سایر نرم‌افزارهای جانبی برای انتخاب سهم با ویژگی‌های مد نظر خود نداریم. با استفاده از فیلتر‌نویسی در زمان کوتاه می‌توانید سهم‌های مورد نظر خود را مشاهده کنید.

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

از معایب آن می‌توان به محدود بودن تایم فریم‌ها اشاره کرد. یعنی بعضی از دستورات فقط برای روز جاری و یا یک مدت مشخص قابل اجرا هستند و شما نمی‌توانید از داده‌های قدیمی جهت بررسی بیشتر یک سهم استفاده کنید.

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

در ادامه نمونه‌ای از فیلترهای پرکاربرد در ارتباط با صف خرید را می‌بینید، سعی کنید برای یادگیری بیشتر خودتان این فیلترها را بنویسید و با اینجا چک کنید. همچنین می‌توانید با توجه به این عبارات، همین فرمول‌ها برای صف فروش بنویسید.

سهم‌هایی را نشان بده که در آستانه صف خرید هستند.

(po1)<= (tmax) && (po1)>= (tmax)-1 && (pd1)<(tmax)

سهم‌هایی که صف خریدشان کم حجم است را نشان بده.

(pd1) == (tmax) && (qd1)>=0.2*(bvol) && (qd1)<=(bvol)

سهم‌هایی که فردا احتمالا صف خرید هستند را نشان بده.

(tno)>50&&(tvol)>(bvol)&&(bvol)<=4000000&&(plp)>=(pcp)+1.5&&(eps)>0

می‌توانید ویدیوهای بیشتری از تالاربورس را در آپارات (شبکه اشتراک ویدیو) و همچنین کانال یوتیوب تالاربورس مشاهده کنید.

۳.۸/۵ - (۲۷ امتیاز)
فائزه حیدری

درباره نویسنده مقاله :

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

اشتراک
اطلاع از
guest
17 دیدگاه
Inline Feedbacks
مشاهده همه دیدگاه ها
ناشناس
ناشناس
1 ماه پیش

با سلام و خسته نباشید
وقتی با استفاده از cfeild فیلتر مینویسم ارور نمیده اما به جای عدد ، nan برای همه سهام مینویسه
ممنون میشم راهنمایی کنید

علیرضا
علیرضا
2 ماه پیش

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

ه غ
ه غ
2 ماه پیش

بسیار عالی ممنون از شما . سوال بنده این است که آیا مرجعی وجود دارد که دیتای مورد نیاز برای فیلترنویسی را برای مدت زمان بیش از دو ماه اراِه دهد؟ چون بنده برای یک فیلتر به دیتای بیش از ۶ ماه نیاز دارم و متاسفانه سایت tse بیش از دوماه دیتا نمیدهدو ممنون میشم راهنمایی بفرمایید

ناشناس
ناشناس
3 ماه پیش

سلام ممنونم از مطالب مفیدتون
متاسفانه این فیلتری که برای کمترین قیمت یک ماهه نوشتید کار نمی کنه ولی خطا هم نمیده یعنی هیچ سهمی رو نشون نمیده در حالی که مطمئنم سهم هایی هستند که این شرایط رو دارن
لطفا راهنمایی کنید ممنون

Last edited 3 ماه پیش by ناشناس
عباس روزبیانی
عباس روزبیانی
7 ماه پیش

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

پویا بهایی‌پور
پویا بهایی‌پور
ویرایشگر
پاسخ دادن به  عباس روزبیانی
7 ماه پیش

سلام و درود خدمت شما
اگر منظورتان قالب شخصی داخل دیده بان هست، باید بگم که متاسفانه فقط امکان ساخت یک قالب شخصی وجود دارد.

میلادآ
میلادآ
7 ماه پیش

سلام خسته نباشید خیلی مطالبتون جالب هست فقط کاش یه مطلب هم بذارید که کسایی که تازه وارد بورس شدن چه سهام های رو بخرن برای بلند مدت البته به غیر از عرضه اولیه ها

فائزه تابش
فائزه تابش
7 ماه پیش

با سلام
پس از اعمال فیلتر مربوط به اصلاح قیمت ۳۰ درصدی تا یک ماه پیش، نتیجه ای مشاهده نشد بدون اینکه خطایی دریافت شود.راه حل چیست؟
با تشکر

فائزه تابش
فائزه تابش
پاسخ دادن به  فائزه حیدری
6 ماه پیش

ممنون

محمدحسین رحیمی
محمدحسین رحیمی
7 ماه پیش

درود بر آقای حامد ثقفی بزرگوار .. ممنون بسیار مفید بود .

حمید سروری کیا
حمید سروری کیا
7 ماه پیش

سلام و خسته نباشید
بسیار عالی و کامل
یه پیشنهاد داشتم ، اگه امکان داره…
مقالات این شکلی رو که متن با تصویر هستش رو به صورت فایل قابل دانلود با فرمت pdf در سایت قرار بدید.
ممنونم از شما

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

مقالات پیشنهادی


درخواست مشاوره ثبت نام دوره‌های آموزشی

اگر سوالی در خصوص دوره‌های آموزش آنلاین تالار بورس دارید، لطفاً ایمیل و شماره موبایل خود را وارد کنید، کارشناسان آموزش تالاربورس با شما تماس خواهند گرفت.

17
0
شما هم نظر بدهیدx
()
x