تیم عاملها و مراحل پژوهش استراتژی
عاملهای تخصصی Stratmill هر استراتژی را با بررسیهایی میان مراحل، در توالی ثابتی پیش میبرند.
تیم عاملها
مسئول پژوهش فرضیهها را مینویسد. توسعهدهنده استراتژی آنها را به استراتژیهای NautilusTrader کدنویسی میکند. عامل تضمین کیفیت، کد را از نظر درستی بررسی میکند. تحلیلگر استراتژی نتایج بکتست و بهینهسازی را میخواند و درباره گام بعدی تصمیم میگیرد. مسئول ریسک پیش از ارتقا، ایمنی استراتژی را ارزیابی میکند. مدیر پرتفوی درباره ارتقا و تخصیص در کل مجموعه تصمیم میگیرد.
در کنار آنها، موتور بکتست هر بکتست و بهینهسازی را با لحاظکردن کارمزدهای واقعیِ محل معامله در مدل اجرا میکند، مهندس داده کاملبودن فهرست دادههای بازار را حفظ میکند، پالایشگر کتابخانه هنگام تکرار استراتژی، بهبودهای مستند را از کتابخانه دانش پیشنهاد میدهد و ابزار صادرکننده استراتژیها را به پلتفرمهای دیگر منتقل میکند.
مراحل بهترتیب
یک اجرا از مراحل کدنویسی، راستیآزمایی، بکتست، بررسی بکتست، بهینهسازی و تحلیل میگذرد. از مرحله تحلیل، میتواند برای تکرار به کدنویسی برگردد، برای بازنگری فرضیه به مسئول پژوهش بازگردد، کنار گذاشته شود یا به بررسی ریسک، ارتقا و معاملات آزمایشی برود. مراحل بعدی زودتر پردازش میشوند تا راستیآزمایی و بکتست در صفی از کدهای جدید معطل نمانند.
لایههای راستیآزمایی
پیش از آنکه کد با کل تاریخچه آزموده شود، راستیآزمایی میشود. ارسال دوباره نسخهای یکسان با تکرار قبلی، بلافاصله رد میشود. بررسی سازگاری تأیید میکند که کد در محل معامله و روی نمادی معامله میکند که فرضیه مشخص کرده است. تحلیل ایستا ساختار و متدهای لازم را بررسی میکند و دسترسی به فایل، شبکه و سیستم و همچنین روشهای خواندن داده از آینده را ممنوع میکند.
سپس آزمونهای مصنوعی، استراتژی را در بازارهای تولیدشده اجرا میکنند (روند صعودی، روند نزولی، بازار بدون روند، جهش نوسان، حجم صفر و شکاف قیمت؛ و نیز دادههای تکمیلیِ مفقود، اگر استراتژی از آنها استفاده کند) و همه اینها در محیطی ایزوله انجام میشود. یک بکتست کوتاه در محیط ایزوله با کندلهای واقعی اخیر باید دستکم یک معامله انجام دهد. در پایان، عامل تضمین کیفیت منطق را با فرضیه تطبیق میدهد: نگاه به آینده، جهت سیگنال، اندازه موقعیت، قواعد محل معامله و زمانبندیها. تضمین کیفیت عملکرد را ارزیابی نمیکند.
وقتی راستیآزمایی شکست میخورد
در صورت شکست، اجرا همراه با یافتهها به توسعهدهنده بازگردانده میشود. پس از 3 تلاش ناموفق، اجرا کنار گذاشته میشود. اگر قاعدهای هرگز فعال نشود یا توسعهدهنده نتواند از پس یک شرط برآید، اجرا بهجای آن برای بازنگری فرضیه به مسئول پژوهش برمیگردد. خطاهای ناشی از خود پلتفرم دوباره تلاش میشوند و هرگز بهعنوان تلاش ناموفق استراتژی محسوب نمیشوند.
دو تصمیم تحلیلگر
پس از نخستین بکتست، تحلیلگر تصمیم میگیرد بهینهسازی کند، تکرار کند، فرضیه را بازنگری کند یا آن را کنار بگذارد؛ بنابراین ساعتها بهینهسازی فقط صرف ایدههایی میشود که سیگنال واقعی دارند. یک کنترل امکانپذیری تصمیم را با اعداد میسنجد: استراتژیای که تعداد معاملات کافی و میانگین بازده معاملهای بالاتر از کف کارمزد محل معامله دارد، بیدلیل کنار گذاشته نمیشود و استراتژیای که زیر کف کارمزد است، برای بهینهسازی فرستاده نمیشود.
پس از بهینهسازی، تحلیلگر با در دست داشتن شواهد خارج از نمونه و داده کنارگذاشتهشده تصمیم میگیرد استراتژی را ارتقا دهد، تکرار کند، بازنگری کند یا کنار بگذارد. هر تصمیم همراه با استدلال آن در صفحه استراتژی ثبت میشود.
کف کارمزد بهازای محل معامله
تحلیلگر کف هزینه فارکس و شواهد ثبتشده اسپرد، کمیسیون و تأمین مالی در اجرا را بررسی میکند. فرضیهای که مزیت خالص کافی نداشته باشد بازنگری یا رد میشود. نبود شواهد هزینه، موجب توقف عملیاتی است و نباید با هزینه صفر جایگزین شود.
بازبینی مسئول ریسک
پیش از ارتقا، مسئول ریسک ایمنی استراتژی را ممیزی میکند و باید صریحاً آن را تأیید کند. محدودیتهای اعمالشده در کد نیز برقرارند: اهرم در محدوده سقف پروفایل ریسک شما، وجود یک کنترل ریسک مشخص (حد ضرری که سهمی محدود از سرمایه را در هر معامله در معرض ریسک بگذارد، یا خروج بر پایه سیگنال با اندازه موقعیت محدود)، نبود مشکل بحرانی و امتیاز ریسک قابلقبول. مسئول ریسک همچنین میتواند معافیت از دروازهای را که تحلیلگر نوشته رد کند. در صورت رد، اجرا به توسعهدهنده بازمیگردد.
مدیر پرتفوی و تخصیص
مرحله مدیر پرتفوی دوباره همه دروازهها و محدودیتهای ریسک را در کد بررسی میکند، استراتژیهایی را که همبستگی زیادی با مواردی که از قبل اجرا شدهاند دارند کنار میگذارد و درباره ارتقا به معاملات آزمایشی تصمیم میگیرد. سرمایه با روش معکوس نوسان و با سقفی برای هر استراتژی تخصیص مییابد؛ استراتژیهای جدید با وزن برابر آغاز میشوند و استراتژیهای در دوره آزمایشی نصف وزن میگیرند. انتقال از معاملات آزمایشی به معاملات زنده هرگز خودکار نیست.
محدودیتهای تکرار و کنار گذاشتن
وقتی میانگین بازده هر معامله از هزینههای معاملاتی کمتر باشد، عملکرد خارج از نمونه ناموفق شود، راهبرد بارها در تأیید شکست بخورد، یا تحلیلگر هیچ مسیر قابلدوامی برای آن نبیند، راهبرد کنار گذاشته میشود. دلیل ثبت میشود و به عامل پژوهش بازخورد داده میشود تا همان بنبست دوباره تکرار نشود.
اجراهای پلتفرم و اجراهای شما
پلتفرم پیوسته پژوهشهای خود را اجرا میکند؛ فضای کاری شما با ظرفیت رزروشده و اولویت بالاتر در کنار آن اجرا میشود، بنابراین ایدهٔ شما پشت کارهای پلتفرم در صف نمیماند. هر زمان بخواهید میتوانید اجراهای خود را از صفحهٔ راهبرد متوقف کنید، از سر بگیرید یا پایان دهید.