مشخصات اندیکاتور پیشرفته در بخش پایینی پنل اختیارات مشخصات اندیکاتور قرار گرفته است.
گروه منطقی گروهی از اندیکاتورهاست که به عنوان یک اندیکاتور واحد عمل میکند. BSB حرفهای گروههای منطقی را بصورت خودکار ایجاد میکند، اما آنها را میتوان بصورت دستی تغییر داد. با این وجود ما نگاهی به گروههای منطقی که بصورت خودکار تولید شده اند میاندازیم که درک آنها آسانتر شود.
به عنوان مثال شما میدانید که برای باز کردن یک معامله همه شروط منطق سرآغاز باید در زمان واحد تکمیل شوند. اما چگونه بیان کنیم که قرار نیست یکی از شروط باید تکمیل شود، بلکه همه آنها باید در زمان واحد تکمیل شوند؟ در اینجا گروه منطقی که بصورت خودکار توسط BSB حرفهای ایجاد شده است وارد عمل خواهد شد (باز کردن یک معامله).
BSB حرفهای از این رویکرد در زمانی استفاده میکند که لازم باشد تصمیم بگیرد آیا یک معامله بسته شود یا خیر. وقتی شروط منطق خاتمه را بررسی میکند، برای BSB حرفهای تکمیل شدن یک شرط جهت بستن معامله کافیست. در اینجا BSB حرفهای هر اندیکاتور را در گروه منطقی خودش قرار میدهد. اندیکاتور تنها میتواند یک گروه منطقی داشته باشد.
برای اطلاعات بیشتر میتوانید به گروههای منطقی مراجعه کنید.
شیفت سیگنال درواقع یک سیگنال را با تعداد انتخاب شدهای از بندها به سمت جلو شیفت میدهد.
شیفت سیگنال در بندها ارزیابی میشود. آن را میتوان در بازه ۰ الی ۲۰۰ تعیین کرد. مقدار پیشفرض برابر با صفر است.
بنابراین وقتی مقدار پارامتر شیفت سیگنال را بزرگتر از ۰ وارد کنید، اندیکاتور بعد از تکمیل شدن شرط منطقی فوراً سیگنال را افزایش نمیدهد، بلکه قبل از افزایش این سیگنال منتظر مقدار درخواست شده بندها میشود.
برخی اندیکاتورها مشخصه شیفت (shift) را یکپارچه کردهاند اما شیفت به جای اینکه فقط سیگنالها را حرکت دهد، خطوط اندیکاتور را حرکت میدهد.
شیفت سیگنال را زمانی میتوانید استفاده کنید که بخواهید بعد از یک رخداد اندیکاتور سیگنالی را افزایش دهید. مثال تصویر سمت راست نشان میدهد مقادیر شیفت سیگنال با چه تفاوتی رخداد افزایش سیگنال را با تعدادی از بندها بعد از اینکه قیمت بازار Moving Average (میانگین متحرک) را قطع میکند، حرکت میدهند.
یک کاربرد دیگر افزایش سیگنال برروی یک سری رخدادهای تکرارشونده است. برای مثال اگر بخواهید چهار اندیکاتور حرکتی با شیفت سیگنال ۰، ۱، ۲ و ۳ را تعیین کنید، وقتی چهار بار متوالی با افزایش اندازه حرکت وجود داشته باشد برنامه یک سیگنال ورود را افزایش خواهد داد.
استراتژی ساز بورس حرفهای پارامتر شیفت سیگنال را برای همه اندیکاتورها بجز اندیکاتورهایی که مقدار IndParam.IsAllowLTF آنها برابر با false باشد، تعین مینماید؛ میتوانید در اندیکاتورهای سفارشی خود از این پارامتر استفاده کنید.
وقتی یک اندیکاتور از فریم زمانی خرید تر(LTF) استفاده میکند، شیفت سیگنال در بندهای فریم داده اصلی استراتژی واقع خواهد شد. برای مثال اگر یک دوره استراتژی H4 باشد و یک اندیکاتور LTF، D1 باشد، اندیکاتور برروی یک سری داده D1 محاسبه میشود اما سیگنالها با H4 بند شیفت داده خواهند شد.
شیفت سیگنال تنها سیگنال را با چند خط دچار تأخیر میکند. برای مثال اگر (در یک چارت روزانه) اتفاقی در دوشنبه رخ دهد و شما بخواهید در روز بعدی معامله کنید یک شیفت سیگنال به ۱ قرار خواهید داد. با این وجود اگر اتفاقی روز سه شنبه رخ دهد نمیتوانید زمان را به عقب برگردانید و دوشنبه معامله نمایید. به همین دلیل است که شما نمیتوانید شیفت سیگنال را به ۱- یا سایر اعداد منفی تنظیم نمایید.
وقتی تکرار سیگنال بیشتر از صفر باشد، استراتژی ساز بورس حرفهای سیگنالهای تکرارشده را براساس عدد انتخاب شده ارسال میکند.
تکرار سیگنال میتواند در رنج ۰ الی ۲۰۰ تعیین شود. مقدار پیشفرض صفر است.
این مثال اندیکاتور میانگین متحرک را با تکرار سیگنال برابر با ۳ نشان میدهد. توجه داشته باشید ما ۴ سیگنال ورود داریم. اولین سیگنال ورود اصلی است و بعد از آن سه تکرار داریم. تکرار سیگنال تعیین میکند چند بار سیگنال ورود اولیه تکرار شود و بنابراین جمعاً «تکرار سیگنال + ۱» سیگنال داریم.
تکرار سیگنال برروی قالب زمانی استراتژی اصلی کار میکند حتی اگر اندیکاتور از فریم زمانی خرید تر (LTF) استفاده کند.
انددیکاتورهای «نقطه سرآغاز معامله» و «نقطه خاتمه معامله» پارامتر تکرار سیگنال ندارند. اگر اندیکاتورهای سفارشی توسعه دهید و یک اندیکاتور نتواند با تکرار سیگنال کار کند، در این صورت IndParam.IsAllowLTF را برابر با false قرار دهید؛
استراتژی ساز بورس حرفهای به شما اجازه میدهد یک نماد متفاوت برای یک اندیکاتور تعیین کنید.
برای مثال، یک معامله استراتژی برروی بازار EURUSD میتواند از سیگنالهای EURJPY استفاده کند. شما میتوانید با تعیین یک نماد EURUSD برای استراتژی و یک نماد EURJPY برای اندیکاتور جداگانه، این کار را انجام دهید.
وقتی از نمادهای شاخص استفاده میکنیم، FSB Pro کل مجموعه داده را برای آن نماد بارگذاری میکند. فایل داده ها باید موجود باشد. اگر برنامه نتواند فایل داده مطلوب را پیدا کند، استراتژی را محاسبه نخواهد کرد.
اختیارات «نماد اندیکاتور» حاوی نمادهایی است که در منابع دادههایی که درحال حاضر استفاده میشوند، تعریف شدهاند.
اختیارات Longer time frame یک دوره خاص را برای اندیکاتور جاری تعیین میکند. این دوره باید طولانی تر از دوره داده اصلی استراتژی باشد. برای مثال اگر شما یک استراتژی داشته باشید که بر روی چارت EURUSD H4 کار کند، میتوانید یک اندیکاتور با فریم زمانی طولانی تر = D1 تعیین نمایید. با انجام این کار BSB Pro فایل داده EURUSD D1 را بارگذاری خواهد کرد و اندیکاتور جاری را با استفاده از دادههای D1 محاسبه خواهد نمود.
اگر یک فریم زمانی کوتاهتر را تعیین کنید، مثلاً M15، استراتژی ساز بورس حرفهای از فریم زمانی اصلی استراتژی استفاده خواهد کرد.
یک فریم زمانی طولانیتر میتواند در یک معامله مورد استفاده قرار گیرد. در چنین حالتی برنامه سری دادهها را بصورت خودکار از متاتریدر درخواست میکند.
میتوانید از LTF برای نظارت بر یک روند کلی استفاده کنید.
برای مثال، میتوانید خرید را تنها در صورتی برروی یک چارت M5 قرار دهید که یک روند رو به بالا در یک چارت روزانه داشته باشید. برای این کار دوره استراتژی را برابر با M5 قرار داده و یک اندیکاتور روند انتخاب کنید و فریم زمان طولانیتر را برابر با D1 قرار دهید.
Use previous bar value یک مفهوم بسیار مهم در علم بکتست را نشان میدهد. میتوان گفت چشم پوشی از این مورد رایج ترین خطا در داد و ستد خودکار است. گزینه «Use previous bar value» (استفاده از مقدار بار قبلی) آنقدر مهم است که استراتژی ساز بورس حرفهای آن را بطور خودکار تعیین میکند، و اجازه نمیدهد آن را تغییر دهید.
وقتی گزینه «Use previous bar value» تیک میخورد، اندیکاتور مقادیر جاری آن که با استفاده از بار جاری محاسبه شده است را چشم پوشی کرده و سیگنالها را با استفاده از مقادیر بار قبلی افزایش میدهد.
گزینه «Use previous bar value» بستگی به قیمت مبنای اندیکاتور و نقطه سرآغاز استراتژی دارد.
به عنوان مثال اگر یک اندیکاتور از قیمت خاتمه برای محاسبه استفاده کند و نقطه سرآغاز استراتژی «Bar Opening» باشد، در این صورت روشن است که ما Bar Closing (بسته شدن بند) را در لحظه باز شدن نمیدانیم. به همین دلیل است که برنامه از خاتمه قبلی برای اندیکاتور استفاده میکند.