این اکسپرت که “AOCCI” نام دارد، یک ربات معاملهگر خودکار برای متاتریدر ۵ است که سیگنالهای ورود خود را از ترکیب دو اندیکاتور قدرتمند و مکمل یعنی Awesome Oscillator (AO) و Commodity Channel Index (CCI) دریافت میکند. فلسفه طراحی این ربات بر پایه تأیید چندگانه سیگنالها و فیلتر کردن شرایط نامطمئن بازار استوار است، به طوری که فقط زمانی وارد معامله میشود که هر دو اندیکاتور همجهت باشند و قیمت در موقعیت مناسب نسبت به سطح پیوت (Pivot) قرار گرفته باشد. برخلاف رباتهای سادهتر که تنها به یک اندیکاتور اکتفا میکنند، این سیستم تلاش میکند با ترکیب یک اسیلاتور مومنتوم (AO) که قدرت و جهت روند را نشان میدهد و یک اسیلاتور نوسانی (CCI) که شرایط اشباع خرید و فروش و قدرت حرکت را اندازهگیری میکند، سیگنالهای با احتمال موفقیت بالاتر تولید کند.
اندیکاتور Awesome Oscillator که توسط بیل ویلیامز ابداع شده، اختلاف بین یک میانگین متحرک ساده ۵ دورهای و یک میانگین متحرک ساده ۳۴ دورهای از قیمت میانی (Median Price) کندلها را نشان میدهد. در این ربات، AO به عنوان فیلتر اصلی تشخیص روند عمل میکند و شرط اول برای هر معامله این است که مقدار فعلی AO بزرگتر از صفر باشد که نشاندهنده مومنتوم مثبت و قدرت خریداران در بازار است. این شرط به تنهایی نیمی از سیگنالهای احتمالی را در بازارهای نزولی فیلتر میکند. در کنار آن، اندیکاتور CCI که نوسانات قیمت نسبت به میانگین آماری آن را اندازه میگیرد، شرط دوم را تأمین میکند و مقدار آن نیز باید بزرگتر یا مساوی صفر باشد. این یعنی ربات فقط زمانی وارد معامله خرید میشود که قیمت بالای میانگین آماری خود قرار داشته باشد، که نشانهای از قدرت و سلامت روند صعودی است. نکته هوشمندانه در منطق ربات این است که برای ورود، علاوه بر شرایط مثبت لحظهای، باید حداقل یکی از سه شرط تغییر وضعیت نیز برقرار باشد: یا AO در کندل قبلی منفی بوده (یعنی تازه وارد فاز مثبت شده)، یا CCI در کندل قبلی منفی یا صفر بوده، یا قیمت بسته شدن کندل یک ساعته قبلی پایینتر از سطح پیوت بوده که نشانه عبور تازه قیمت از این سطح مهم است. این مکانیزم به ربات کمک میکند که در اوج روند و زمانی که همه چیز برای مدت طولانی مثبت بوده وارد نشود، بلکه در لحظات آغازین تغییر فاز یا عبور از سطوح کلیدی وارد عمل شود.
یکی از ویژگیهای حرفهای و قابل توجه این اکسپرت، سیستم تشخیص و فیلتر جهشهای قیمتی غیرعادی (Big Jump و Double Jump) است که آن را از بسیاری از رباتهای ساده متمایز میکند. ربات قبل از بررسی سیگنالهای ورود، ۶ کندل اخیر را بررسی میکند و اگر اختلاف قیمت باز شدن بین دو کندل متوالی از مقدار BIG_JUMP (پیشفرض ۱۰۰ پیپ) بیشتر باشد، یا اختلاف بین کندل جاری و دو کندل قبل از DOUBLE_JUMP (پیشفرض ۱۰۰ پیپ) فراتر رود، از ورود به معامله خودداری میکند. این فیلتر هوشمند برای محافظت در برابر گپهای قیمتی (Price Gaps) ، جهشهای ناگهانی ناشی از اخبار مهم اقتصادی، یا کندلهای غیرعادی بزرگ طراحی شده است. در چنین شرایطی، اندیکاتورها ممکن است سیگنالهای کاذب و اغراقآمیزی تولید کنند و ورود به معامله بدون این فیلتر میتواند بسیار پرریسک باشد. این قابلیت نشاندهنده دقت طراح در مدیریت شرایط استثنایی و غیرعادی بازار است که اغلب در اکسپرتهای آموزشی نادیده گرفته میشود.
مدیریت معاملات در این ربات شامل سه لایه حفاظتی است: حد ضرر ثابت (Stop Loss) ، حد سود ثابت (Take Profit) و حد ضرر متحرک (Trailing Stop) . حد ضرر و حد سود هر دو بر حسب پیپ و به صورت قرینه (هر دو ۵۰ پیپ پیشفرض) تنظیم شدهاند که یک نسبت ریسک به ریوارد ۱:۱ ایجاد میکند. اما لایه سوم یعنی Trailing Stop با مقدار پیشفرض ۵ پیپ و Trailing Step با مقدار ۵ پیپ، به ربات اجازه میدهد که در صورت حرکت قیمت به نفع معامله، حد ضرر را به دنبال قیمت بکشد و از سودهای کسب شده محافظت کند. مکانیزم کار به این صورت است که وقتی سود شناور معامله به اندازه TrailingStop + TrailingStep (یعنی ۱۰ پیپ) برسد، حد ضرر به اندازه TrailingStep (۵ پیپ) به سمت قیمت فعلی جابجا میشود. این فرآیند هر بار که قیمت ۵ پیپ دیگر به نفع معامله حرکت کند تکرار میشود و عملاً یک قفلکننده سود پویا ایجاد میکند که همزمان با رشد سود، ریسک معامله را کاهش میدهد. نکته مهم در تنظیمات این است که Trailing Step نمیتواند بدون Trailing Stop فعال شود و اگر Trailing Stop صفر باشد، کل مکانیزم غیرفعال میشود.
سطح پیوت (Pivot) که از میانگین بالاترین قیمت، پایینترین قیمت و قیمت بسته شدن کندل قبلی محاسبه میشود، به عنوان یک فیلتر موقعیتیابی در این استراتژی نقش ایفا میکند. ربات فقط زمانی وارد معامله خرید میشود که قیمت Ask بالاتر از سطح پیوت باشد، یعنی قیمت در نیمه بالایی محدوده معاملاتی روزانه یا دوره قبل قرار گرفته باشد. این فیلتر از ورود به معاملات خرید در زمانی که قیمت هنوز زیر نقطه تعادل بازار است جلوگیری میکند. ترکیب این شرط با شرایط AO و CCI یک سیستم چندلایه تأیید ایجاد میکند که برای دریافت سیگنال نهایی، باید هر سه فیلتر (روند با AO، مومنتوم با CCI و موقعیت با Pivot) به طور همزمان سیگنال مثبت بدهند. پارامتر SignalCandle که مقدار پیشفرض آن صفر است، تعیین میکند که مقادیر اندیکاتورها از کندل جاری (در حال شکلگیری) خوانده شود یا از کندل قبلی (بسته شده). مقدار صفر به معنای استفاده از کندل جاری است که سیگنالهای سریعتری میدهد، اما اگر میخواهید از سیگنالهای قطعیتر بر اساس کندلهای بسته شده استفاده کنید، میتوانید این عدد را روی ۱ تنظیم کنید تا ربات منتظر بسته شدن کندل بماند و سپس تصمیم بگیرد.Lots : این پارامتر حجم ثابت معاملاتی را مشخص میکند که ربات برای هر سفارش جدید استفاده خواهد کرد. مقدار پیشفرض ۰.۱ نشاندهنده حجمی است که برای یک حساب استاندارد (مثلاً ۱۰,۰۰۰ دلاری) مناسب به نظر میرسد، اما باید توجه داشت که برخلاف رباتهای مارتینگل، اینجا حجم معاملات همیشه ثابت میماند و افزایش پیدا نمیکند. انتخاب این عدد باید بر اساس موجودی حساب و میزان ریسکپذیری شما انجام شود، چون هر معامله دقیقاً با همین حجم باز میشود و ربات هیچ مکانیزمی برای کاهش یا افزایش خودکار حجم بر اساس شرایط بازار ندارد.

تنظیمات اکسپرت AOCCI
Stop Loss (in pips) : این پارامتر فاصله حد ضرر از نقطه ورود را بر حسب پیپ مشخص میکند و یکی از ارکان اصلی مدیریت ریسک در این ربات است. مقدار پیشفرض ۵۰ پیپ یعنی اگر قیمت ۵۰ پیپ بر خلاف جهت معامله حرکت کند، پوزیشن به طور خودکار بسته میشود تا از ضررهای بزرگتر جلوگیری شود. برای معامله خرید، حد ضرر ۵۰ پیپ پایینتر از قیمت ورود و برای معامله فروش، ۵۰ پیپ بالاتر از قیمت ورود قرار میگیرد. اگر این مقدار را روی صفر تنظیم کنید، معامله بدون حد ضرر باز میشود که بسیار خطرناک است و به هیچ وجه توصیه نمیشود، مگر اینکه از قابلیت Trailing Stop برای مدیریت ریسک استفاده کنید.
Take Profit (in pips) : این پارامتر فاصله حد سود از نقطه ورود را بر حسب پیپ تعیین میکند و مقدار پیشفرض آن نیز ۵۰ پیپ است که نسبت ریسک به ریوارد ۱:۱ را ایجاد میکند. در معامله خرید، حد سود ۵۰ پیپ بالاتر از قیمت ورود و در معامله فروش، ۵۰ پیپ پایینتر از قیمت ورود تنظیم میشود. برابری حد سود و حد ضرر به این معناست که ربات برای سودآوری نیاز دارد تعداد معاملات برد آن از باختها بیشتر باشد. اگر میخواهید نسبت ریسک به ریوارد بهتری داشته باشید، میتوانید این عدد را بزرگتر از Stop Loss تنظیم کنید (مثلاً ۷۵ یا ۱۰۰ پیپ)، اما توجه داشته باشید که رسیدن به اهداف دورتر ممکن است سختتر باشد و تعداد معاملاتی که به حد سود میرسند کاهش یابد.
Trailing Stop (in pips) : این پارامتر فاصله حد ضرر متحرک از قیمت فعلی بازار را بر حسب پیپ مشخص میکند و یک ابزار قدرتمند برای محافظت از سودهای در حال رشد است. مقدار پیشفرض ۵ پیپ یعنی وقتی قیمت به اندازه کافی به نفع معامله حرکت کند، حد ضرر در فاصله ۵ پیپ پشت قیمت فعلی قفل میشود و با ادامه حرکت قیمت، به دنبال آن کشیده میشود. برای مثال اگر یک معامله خرید باز کنید و قیمت ۲۰ پیپ بالا برود، حد ضرر به طور خودکار ۱۵ پیپ بالاتر از نقطه ورود (۵ پیپ پایینتر از قیمت فعلی) منتقل میشود. اگر این پارامتر را روی صفر بگذارید، کل مکانیزم Trailing Stop غیرفعال میشود و ربات فقط به حد ضرر و حد سود ثابت متکی خواهد بود.
Trailing Step (in pips) : این پارامتر گام یا فاصله بین هر بار جابجایی حد ضرر متحرک را بر حسب پیپ مشخص میکند و از بهروزرسانیهای بیش از حد و غیرضروری جلوگیری میکند. مقدار پیشفرض ۵ پیپ یعنی ربات هر بار که قیمت ۵ پیپ دیگر در جهت سود حرکت کند، حد ضرر را مجدداً ۵ پیپ جابجا میکند. این مکانیزم باعث میشود حد ضرر به صورت پلکانی و کنترلشده حرکت کند، نه با هر نوسان کوچک قیمت. نکته مهم این است که Trailing Step نمیتواند بدون مقدار غیرصفر Trailing Stop کار کند و اگر Trailing Stop صفر باشد، این پارامتر نیز بیاثر خواهد بود. همچنین Trailing Step نباید از Trailing Stop بزرگتر باشد، چون در این صورت حد ضرر ممکن است از قیمت فعلی جلو بزند و معامله بلافاصله بسته شود.

CCI: averaging period : این پارامتر دوره یا پریود محاسبه اندیکاتور CCI را مشخص میکند که یکی از دو ستون اصلی سیستم سیگنالدهی این ربات است. مقدار پیشفرض ۵۵ یعنی CCI بر اساس ۵۵ کندل اخیر محاسبه میشود که یک پریود بلندمدت و غیرمعمول برای این اندیکاتور محسوب میشود (پریود استاندارد معمولاً ۱۴ یا ۲۰ است). استفاده از پریود ۵۵ باعث میشود CCI نوسانات کمتری داشته باشد و فقط روندهای اصلی و حرکات قیمتی معنادار را منعکس کند. این عدد بالا به کاهش سیگنالهای اشتباه و نویز بازار کمک میکند، اما ممکن است ورود به معامله را با تأخیر بیشتری همراه سازد. اگر سیگنالهای بیشتری میخواهید میتوانید این عدد را کاهش دهید (مثلاً ۱۴ یا ۲۰) و اگر سیگنالهای محافظهکارانهتر میخواهید آن را افزایش دهید.
CCI: type of price : این تنظیم مشخص میکند که اندیکاتور CCI بر اساس کدام قیمت از هر کندل محاسبه شود. مقدار پیشفرض PRICE_TYPICAL به معنای قیمت معمولی یا Typical Price است که از میانگین بالاترین قیمت (High)، پایینترین قیمت (Low) و قیمت بسته شدن (Close) در هر کندل به دست میآید و فرمول آن (High + Low + Close) تقسیم بر ۳ است. این گزینه دید متعادلتری از قیمت در مقایسه با استفاده صرف از قیمت بسته شدن ارائه میدهد، چون نوسانات درون کندلی را نیز در نظر میگیرد. گزینههای دیگر شامل PRICE_CLOSE (فقط قیمت بسته شدن)، PRICE_OPEN (قیمت باز شدن)، PRICE_HIGH (بالاترین قیمت)، PRICE_LOW (پایینترین قیمت) و ترکیبهای دیگر هستند که هر کدام حساسیت متفاوتی به بخشهای مختلف کندل دارند.
Check for too-big candlesticks (n “-” n-1) : این پارامتر که با نام BIG_JUMP در کد شناخته میشود، حداکثر اختلاف مجاز بین قیمت باز شدن دو کندل متوالی را بر حسب پیپ مشخص میکند و یک فیلتر ایمنی مهم است. مقدار پیشفرض ۱۰۰ پیپ یعنی اگر اختلاف قیمت باز شدن کندل فعلی با کندل قبلی بیشتر از ۱۰۰ پیپ باشد، ربات از ورود به هرگونه معامله جدید خودداری میکند. این شرایط معمولاً در زمان گپهای قیمتی (مثلاً بعد از تعطیلی آخر هفته)، انتشار اخبار بسیار مهم اقتصادی، یا نوسانات شدید و غیرعادی بازار رخ میدهد. در چنین لحظاتی، اندیکاتورها ممکن است سیگنالهای کاذب و غیرقابل اعتماد تولید کنند و این فیلتر از شما در برابر ورود به معاملات پرریسک در شرایط بیثبات محافظت میکند.
Check for too-big candlesticks (n “-” n-2) : این پارامتر که DOUBLE_JUMP نام دارد، حداکثر اختلاف مجاز بین قیمت باز شدن کندل فعلی و دو کندل قبل را بر حسب پیپ تعیین میکند و یک لایه اضافی دیگر از محافظت است. مقدار پیشفرض ۱۰۰ پیپ یعنی اگر قیمت در طول دو کندل بیش از ۱۰۰ پیپ جهش کرده باشد، ربات وارد معامله نمیشود. این فیلتر جهشهای تجمعی در دو کندل متوالی را شناسایی میکند که ممکن است در بررسی کندل به کندل (BIG_JUMP) دیده نشوند. ترکیب این دو فیلتر یک تور ایمنی نسبتاً کامل برای شناسایی حرکات غیرعادی و جهشهای بزرگ قیمت ایجاد میکند که میتوانند استراتژیهای مبتنی بر اندیکاتور را با شکست مواجه کنند.
set to 1 if you want to get the cangle close 0 for current : این پارامتر که SignalCandle نام دارد، تعیین میکند که ربات مقادیر اندیکاتورها را از کدام کندل بخواند. مقدار پیشفرض ۰ یعنی ربات از کندل جاری (کندلی که هنوز بسته نشده و در حال شکلگیری است) برای دریافت سیگنال استفاده میکند که باعث میشود سیگنالها در لحظه و بدون تأخیر دریافت شوند. اگر این مقدار را روی ۱ تنظیم کنید، ربات منتظر بسته شدن کندل میماند و از کندل قبلی (که قطعی و غیرقابل تغییر است) برای تصمیمگیری استفاده میکند. استفاده از کندل جاری (۰) سیگنالهای سریعتر اما با ریسک تغییر جهت در لحظات پایانی کندل را به همراه دارد، در حالی که کندل بسته شده (۱) سیگنالهای قطعیتر اما با کمی تأخیر تولید میکند. انتخاب بین این دو بستگی به سبک معاملاتی و میزان ریسکپذیری شما دارد.
magic number : این یک عدد شناسایی منحصربهفرد برای تمام سفارشهایی است که این اکسپرت در بازار ثبت میکند. اگر شما چندین ربات یا اکسپرت مختلف را همزمان روی یک حساب معاملاتی و یک نماد (مثلاً طلا یا یورو-دلار) اجرا میکنید، این عدد به ربات کمک میکند تا سفارشهای خودش را از سفارشهای سایر رباتها یا معاملات دستی شما تشخیص دهد و فقط همانها را مدیریت کند. این تفکیک برای عملکرد صحیح Trailing Stop و بررسی وجود پوزیشنهای باز (IsPositionExists) ضروری است، چون ربات فقط پوزیشنهایی را دنبال میکند که Magic Number آنها با این عدد مطابقت داشته باشد. اگر قصد دارید چند نسخه از این اکسپرت را همزمان اجرا کنید، حتماً برای هر کدام یک MagicNumber کاملاً متفاوت انتخاب کنید تا مدیریت پوزیشنها و تریلینگ استاپ آنها با یکدیگر تداخل نداشته باشد.
اکسپرت AOCCI
پس از تایید شماره موبایل، لینک دانلود فایل به شما نمایش داده خواهد شد.
راهنمای نصب اندیکاتور و اکسپرت در متاتریدر
راهنمای ایجاد حساب دمو و ریل ، نصب متاتریدر و اضافه کردن حساب به متاتریدر







