تابع هدف، چشم بصیرت طراحی استراتژی در بهینه یابی
در مقالهی پیشین از سری مقالات مرتبط با بهینه یابی به شرح و بررسی «بهینهیابی و بکتست، یک روح در دو بدن» پرداختیم در این مقاله به شرح و بررسی «تابع هدف، چشم بصیرت طراحی استراتژی در بهینه یابی» میپردازیم.
در صورت برقراری شرایط معاملات الگوریتمی در بازار هدف برای سنجش بازده استراتژیهای معاملاتی میتوانید از سفارش کد پایتون، سفارش کد mql و … برای کد کردن و بهینه یابی استراتژیهای خود استفاده کنید. و در عین حال سوای امکان سفارش اکسپرت میتوانید از سفارش اندیکاتور برای دریافت یک نمایش گرافیکی از محاسبات استراتژی خود بهره ببرید.
– – –
بر طبق آموزش بهینه یابی در پروسهی بهینهیابی نخستین کار ما جستجو و کاوش فضای پارامتر ها ست ( منظورم تنظیمات اندیکاتورها و..).پس از آن باید به سنجش آن ها بپردازیم. این بیان که میزان کارآمدی و کیفیت یک روند بهینهیابی را تابع هدف آن مشخص میکند جملهی دقیقی است. به واقع تابع هدف عنصری است که صلاحیت یا عدم صلاحیت یک مجموعه پارامتر را به ما نشان میدهد. اما اینکه چرا این عنوان را به مقالهی امروز اختصاص داده ام؟ دلیل آن است که تابع هدف پنجره ای است که ما از طریق آن به مشاهدهی فضای بهینهیابی میپردازیم(خروجی بهینه یابی). درست مانند هورمون های ما هر پارامتر از استراتژی بر روی خلق و خُو و ابعاد شخصیتی استراتژی تاثیر گذار است باید گفت فضای گستردهی بهینهیابی فضایی چند بعدی ست که وسعت دید ما در این فضا تنها به اندازهی تابع هدف مورد انتخابمان است. هرچه فضای بهینهیابی گسترده تر و متد جستجو پیچیده تر باشد اهمیت تابع هدف نیز بیشتر خواهد بود. اجازه بدهید تا به زبان ساده تر به مفهوم تابع هدف بپردازیم.
در مرحلهی اول یک استراتژیست باید به این سوال پاسخ دهد که یک استراتژی مطلوب در نظرش دارای چه ویژگی های شخصیتی ایست یک استراتژی با بیشترین سود کل؟ یک استراتژی با بیشترین سود در هر معامله؟ استراتژی ای که بالاترین دقت را در معاملات سود ده دارد و یا معامله ای با بالاترین نسبت شارپ؟
بر طبق منابع معتبر آموزش بهینه یابی در صورتی که تابع هدف خود را نسبت شارپ در نظر بگیرید استراتژیای مطلوب شماست که بالاترین نسبت شارپ را داراست و به همین ترتیب در فضای بهینهیابی مجموعه ای از پارامتر ها که دارای بیشترین مقدار شارپ هستند مطلوب شما خواهند بود. همانطور که در مقالات قبل نیز اشاره کردیم با گسترش و افزایش پیچیدگی فضای بهینه یابی یا به بیان دیگر با افزایش پارامتر ها و پیچیده تر شدن استراتژی ها با چالش هایی رو به رو میشویم، از جمله عدم وجود منابع زمانی و محاسباتی کافی برای جستجوی کامل فضای بهینهیابی.
هنگامی که با شرکای خود به تضاد منافع برمیخوریم فضای شراکت را ترک کرده و یا آنکه سکه میاندازیم. از آنجا که ما مصمّم به انجام پروسهی بهینهیابی در بهترین شکل ممکن هستیم با درک ناتوانی خود در جستجوی کامل فضای وسیع بهینهیابی به احتمالات روی خواهیم آورد، احتمالات شاید زیبا ترین جلوه ی فهم ما از نافهمی مان هستند. در چنین شرایطی علم امروز بهینهیابی تمام عمدهی تلاش خود را صرف بهبود تابع هدف در بهینهیابی استراتژی های معاملاتی و طراحی الگوریتم های کاوشگری کرده که دقیق نیستند اما پیوسته دقیقتر هستند. پس جای تعجب نیست که بسیاری از کارشناسان مشهور جهان توابع هدف شخصی و از قبل طراحی شده ای برای بهینهیابی در اختیار دارند. شاید مهم ترین نکته در مورد تایع هدف آن است که باید دید خود را نسبت به معیار مطلوبیت استراتژی بازبینی کنیم. انتخاب تابع هدف بیکیفیت بهترین مجموعه پارامتر هارا رد خواهد کرد و از آن گذشته احتمالا مدلی ضعیف را تایید خواهد کرد. دسترسی به یک مرجع مناسب برای آموزش بهینه یابی بسیار به پروسهی بهینه یابی کمک میکند. همچنین میتوان از سفارش کد بهینه یابی و نرم افزار بهینه یابی نیز بهره برد.
برای تشریح ظرافت این مبحث به یک نمونه میپردازم، افراد بسیاری در ابتدای پروسهی بهینه یابی فاکتوری مانند سود خالص را به عنوان تابع هدف انتخاب میکنند بنابراین مجموعه ای از پارامتر های که بیشترین سود خالص را تولید میکنند به عنوان مجموعه ی برتر انتخاب خواهند شد. اما تجربه و تحقیقات ثابت کرده که این معیار حساس و شکننده انتخاب درستی نیست برای این موضوع دلایل متعددی وجود دارد از جمله آنکه این تابع هدف، توزیع سود را نادیده میگیرد. شاید بخش بزرگی از سود تولید شده توسط یک مجموعه پارامتر حاصل یک یا دو معامله باشد که تکرار آن ها در آینده امری نزدیک به محال است نمونهی دیگر از دلایل نامناسب بودن این تابع هدف آن است که به طور کامل مسئلهی ریسک را نادیده میگیرد، شاید استراتژی یا مجموعه پارامتر در سایه ی دورهی افولی طولانی و غیر قابل قبول موفق به تولید این حد از سود شده است. به طور خلاصه در ادامه موارد کلیدی را بیان خواهم کرد که در پروسهی طراحی و توسعهی یک تابع هدف شخصی و قدرتمند روشنگر راه کارشناسان خواهند بود، در منابع معتبر به طور معمول این چنین ویژگی های شخصیتی را برای یک استراتژی مطلوب و در ادامه عملکرد یک مجموعه پارامتر مطلوب قائل میشوند :
- توزیع نسبتا یک پارچهی معاملات
- توزیع نسبتا یک پارچهی سود های معاملاتی
- وجود نوعی تعادل میان سود های ناشی از معاملات خرید و معاملات فروش (در بازار های دو طرفه)
- وجود گروه پرشماری از پارامتر های سودده در پروسهی بهینهیابی
- عملکرد قابل قبول در چندین بازار
- ریسک قابل قبول برای استراتژیست
- رشته های نسبتا پایدار از معاملات سودده و ضررده
- تعداد معاملات بالا و از نظر تعداد قابل قبول(برای اطلاع بیشتر به مقالهی قبل مراجعه کنید)
- عملکرد معاملاتی سودده در تصویر کلی
در نهایت به یاد داشته باشید که تابع هدف باید با هدف انتخاب با کیفیت ترین و پایدارترین استراتژی و یا مجموعه پارامتر انتخاب شود. با کیفیت ترین و پایدارترین استراتژی و یا مجموعهی پارامتر همیشه پرسودترین آن ها نیست اما قابل اعتمادترین است. در ادامهی این سری مقالات به الگوریتم های کاوشگر و دیگر مباحث عمیق بهینهیابی و عدم قطعیت خواهیم پرداخت.
– – –
در صورت برقراری شرایط معاملات الگوریتمی در بازار هدف، سوای این بحث که میتوان استراتژیهای معاملاتی خود را به وسیلهی سفارش کد پایتون یا سفارش کد mql و سفارش اکسپرت کد کرد و در پروسهی بک تست اعتبار سنجی نمود. همچنین میتوان از طریق سفارش اندیکاتور به آنها یک جنبهی نمایشی نمایانتری برای تسهیل تحلیل در سابقهی نماد داد.
– – –
در مقالهی بعدی به بررسی «ورود به جهان الگوریتم های کاوشگر و بررسی Grid Search» میپردازیم.
البته تمام موارد فوق در مبحث بهینه یابی را در محصول نرم افزاری الگوریتم حرفه ای تابع هدف بهینه یابی لحاظ شده است.