وضعیت بازار
ارزش معاملات سهام
ارزش معاملات اختیار
حجم معاملات اختیار
اطلاعات قیمت
✨ دوره آفلاین آموزش اختیارمعامله و فرمول نویسی
بیش از ۱۵ ساعت آموزش

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

✨ دوره آنلاین تحلیل تکنیکال و کاربرد آن در آپشن

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

۲۰٪ تخفیف ویژه ثبت نام تا پایان اردیبهشت

تخفیف ویژه 50٪ اشتراک حرفه‌ای!

با ابزارهای حرفه‌ای، ارتقای مهارتت رو شروع کن و بازدهی رو چند برابر کن!

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

روش جدید یکپارچه سازی فیلتر و فرمول و تعریف متغییر و متغییر آن بصورت ویژوال

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

راهنمای جامع ترکیب ستون محاسباتی و فیلتر FILTER_

در روش جدید، به جای استفاده از متغیرهای خارج از کد، از یک استاندارد مشخص با پیشوند const FILTER استفاده می‌شود که باعث خوانایی، نگهداری آسان‌تر و عملکرد بهتر کد می‌گردد. مهم‌ترین ویژگی این سیستم، یکپارچه‌سازی بخش "فیلتر" و "ستون محاسباتی" است؛ به این معنی که می‌توان با یک قطعه کد واحد، هم محاسبات را انجام داد و نتیجه را نمایش داد و همزمان از همان کد به عنوان فیلتر برای جستجو استفاده کرد. این قابلیت زمانی کاربرد دارد که منطق نمایش یک ستون و شرط فیلتر کردن آن یکسان باشد.

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

سیستم قدیمی (حذف شده)

// روش قدیمی که دیگر پشتیبانی نمی‌شود
let condition11 = _var11 != '' ? _var11 : 1;  // تعداد خرید اسپرد
let minPrice = _var12 != '' ? _var12 : 1000;  // حداقل قیمت

if (price > condition11) {
    // منطق معامله
}

مشکلات روش قدیمی:

  • وابستگی به متغیرهای خارجی
  • کد پیچیده و غیرقابل خواندن
  • عدم امکان مشاهده ویژوال مقادیر
  • جداسازی اجباری فیلتر از فرمول اصلی

روش جدید تعریف متغیر

1️⃣ شروع با const FILTER_
const FILTER_
2️⃣ ادامه نام با حروف بزرگ
const FILTER_MIN_RETURN      // ✅ درست
const FILTER_MAX_PRICE       // ✅ درست
const FILTER_spread_count    // ❌ غلط
const filter_MIN_RETURN      // ❌ غلط
3️⃣ اضافه کردن توضیح فارسی بعد //
const FILTER_MIN_RETURN = 5;    // حداقل سود
const FILTER_MAX_PRICE = 10000; // حداکثر قیمت

مزایای سیستم جدید

ویژوال بودن
  • امکان تغییر مقادیر بدون تغییر کد
  • مشاهده آسان پارامترهای قابل تنظیم
نگهداری آسان
  • کد تمیز و خواناتر
  • عدم وابستگی به متغیرهای خارجی
عملکرد بهتر
  • بهینه‌سازی بهتر توسط موتور جاوااسکریپت
  • کاهش پیچیدگی محاسبات

مثال‌های عملی

const FILTER_MIN_PROFIT = 2.5;     // حداقل سود (درصد)
const FILTER_MIN_TVALUE = 10000000; // حداقل ارزش معاملات
const FILTER_OPTION_STATE = 'ITM';  // وضعیت قرارداد [][ITM][OTM][ATM]

مقایسه قبل و بعد

کد قدیمی:

let condition11 = _var11 != '' ? _var11 : 1000;
let condition12 = _var12 != '' ? _var12 : 'ITM';

if (price > condition11 && state == condition12) {
    return 'نمایش داده شود';
}

کد جدید:

const FILTER_MIN_PRICE = 1000;     // حداقل قیمت
const FILTER_OPTION_STATE = 'ITM';  // وضعیت قرارداد

if (price > FILTER_MIN_PRICE && state == FILTER_OPTION_STATE) {
    return 'نمایش داده شود';
}

یکپارچه‌سازی فیلتر و فرمول

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

مثال کامل

🔸 فرمول ساده (بدون فیلتر) در قسمت ستون محاسباتی

const FILTER_TVALUE_MIN = 10000000;  // حداقل ارزش معاملات
const FILTER_OPTION_STATE = '';      // وضعیت قرارداد [][ITM][OTM][ATM]

let result = '';
if (Option.TI.TValue > FILTER_TVALUE_MIN
&& (FILTER_OPTION_STATE == '' || Option.State == FILTER_OPTION_STATE)) {
    result = 'ارزش معاملات: ' + Option.TI.LastDayTValue + ' ' + Option.State;
}

result;

🔸 فیلتر جداگانه (روش قدیمی) در قسمت فیلتر تعریف می شد

const FILTER_TVALUE_MIN = 10000000;  // حداقل ارزش معاملات
const FILTER_OPTION_STATE = '';      // وضعیت قرارداد

// فقط true/false برمی‌گرداند
Option.TI.TValue > FILTER_TVALUE_MIN
&& (FILTER_OPTION_STATE == '' || Option.State == FILTER_OPTION_STATE)

🔸 🌟 فرمول یکپارچه جدید (فیلتر + فرمول) در قسمت ستون محاسباتی

const FILTER_TVALUE_MIN = 10000000;  // حداقل ارزش معاملات
const FILTER_OPTION_STATE = '';      // وضعیت قرارداد [][ITM][OTM][ATM]

const FILTER_SHOW = true;             // فیلتر در نمایش خروجی
const FILTER_RESULT = false;          // فیلتر جستجوی اصلی

let isFilterMatched = false;           
let result = '';

if ((!FILTER_SHOW && !FILTER_RESULT) ||  
(Option.TI.TValue > FILTER_TVALUE_MIN
&& (FILTER_OPTION_STATE == '' || Option.State == FILTER_OPTION_STATE))) {
    
    if (FILTER_RESULT) {              
        isFilterMatched = true;       
    }                   
    
    result = 'ارزش معاملات: ' + Option.TI.LastDayTValue + ' ' + Option.State;
}

if (FILTER_RESULT === true) {         
    isFilterMatched;                  
} else {                              
    result;
}

راهنمای تبدیل کد

کلید توضیح مقدار پیش‌فرض
FILTER_SHOW فیلتر نمایش خروجی true
FILTER_RESULT فیلتر جستجوی اصلی false

توضیح کدهای اضافی برای ترکیب ستون و فیلتر

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

متغیرهای کنترلی
const FILTER_SHOW = true;     // کنترل نمایش خروجی
const FILTER_RESULT = false;  // کنترل حالت فیلتر

این دو متغیر تعیین می‌کنند که کد در چه حالتی کار کند:
- اگر فقط نمایش خروجی می‌خواهید
- اگر فقط فیلتر می‌خواهید
- یا هر دو

متغیر وضعیت فیلتر
let isFilterMatched = false;

این متغیر نتیجه فیلتر را ذخیره می‌کند. اگر شرایط فیلتر برقرار باشد، مقدار آن true می‌شود.

منطق کنترل اجرا

if ((!FILTER_SHOW && !FILTER_RESULT) || 
(Option.TI.TValue > FILTER_TVALUE_MIN && ...)) {
    // محتوای اصلی
}

if (FILTER_RESULT === true) {         
    isFilterMatched;                  
} else {                              
    result;
}

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

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

×