به نتیجهای شفاف رسیدهاید: استراتژی رمزارزی شما بیشتر بازدهش را بین 13:00 تا 14:00 به وقت UTC به دست میآورد. کارمزدها را بررسی کردهاید، بکتست را دوباره اجرا کردهاید و سیگنال را در معاملات کاغذی آزمودهاید. حالا دارید نسخهای برای سهام آمریکا آماده میکنید و به نظر میرسد بهترین ساعت 09:30 تا 10:30 به وقت نیویورک باشد.
پیش از اعتماد به هر یک از این نتایج، ببینید ساعت چه تغییری کرده است. ساعت تابستانی آمریکا زمان بازگشایی نیویورک را نسبت به UTC یک ساعت جابهجا میکند. اگر ویژگیها، برچسبهای نشست و سفارشهایتان از تعریفهای متفاوتی از زمان استفاده کنند، شاید استراتژی بهجای یک الگوی تکرارپذیر بازار، از مرز تقویمی بهره ببرد.
لازم نیست پژوهش زمانروز را کنار بگذارید. کافی است مشخص کنید فرضیهتان درباره کدام ساعت است و بعد همه بخشهای بکتست را بر همان مبنا هماهنگ کنید.
اول مشخص کنید ساعت به چه معناست
«ساعت اول» دقیق به نظر میرسد، تا وقتی که ساعت مرجعش را مشخص کنید. ممکن است منظور 60 دقیقه نخست پس از بازگشایی NYSE باشد، یا بازه 09:30 تا 10:30 به وقت مدنی نیویورک، یا یک بازه ثابت UTC. این تعریفها بخشی از سال با هم تطبیق دارند و نزدیک تغییر ساعت تابستانی از هم فاصله میگیرند.
برای فرضیه سهام، از زمان نشست محلی بورس استفاده کنید: ساعت 09:30 نیویورک یعنی 09:30، چه نیویورک روی EST باشد چه روی EDT. برای فرضیه رمزارز، ممکن است متغیر موردنظر یک ساعت ثابت UTC باشد. رمزارزها شبانهروزی معامله میشوند، پس زنگ آغاز معاملات یک بازار مشخص مبنای این ادعا نیست.
پیش از تنظیم پارامترها، تعریف را مکتوب کنید. «معامله در ساعت اول پس از آغاز نشست عادی» قابلآزمون است. اما «معامله در ساعتی که سیگنال بهترین عملکرد را دارد» به بهینهساز اجازه میدهد قرارداد زمانی را هم همراه با استراتژی انتخاب کند.
ناهماهنگی ساعتها از کجا پنهان میشود
فرض کنید دادههای سهامتان به UTC ذخیره شدهاند، کد ویژگیها ردیفها را بر اساس ساعت UTC گروهبندی میکند و قواعد اجرا در ساعت 09:30 نیویورک موقعیت باز میکنند. پس از تغییر ساعت تابستانی، زمان بازگشایی بازار از 14:30 UTC به 13:30 UTC میرود. حالا ویژگیای که در بازه UTC خود «ساعت اول» نام گرفته، به بخش دیگری از نشست اشاره میکند.
دام مشابهی هنگام ساخت کندل از روی زمانمهرها پیش میآید. اگر دادهها را بر اساس UTC بازنمونهگیری کنید و بعد برچسبها را به وقت نیویورک تبدیل کنید، ممکن است به مرزهای غیرمنتظرهای برسید؛ بهویژه در گذار بهاری که یک ساعت محلی وجود ندارد و گذار پاییزی که یک ساعت محلی دو بار تکرار میشود. زمانمهری مثل 01:30 به وقت محلی در یکشنبه پاییزی مبهم است، مگر آنکه آفست UTC را داشته باشد یا با UTC نمایش داده شود.
در نتیجه رمزارزتان هم تقویم میتواند اثرگذار باشد. یک استراتژی مبتنی بر ساعت UTC ممکن است ماهها با فعالیت بازار آمریکا همزمان باشد و بعد با تغییر ساعت آمریکا ظاهراً جابهجا شود. این موضوع استراتژی را بیاعتبار نمیکند، اما ادعایی را که میتوانید مطرح کنید تغییر میدهد. شاید الگویی ثابت بر اساس UTC را اندازه گرفته باشید که گاهی با بازگشایی آمریکا همپوشانی دارد، نه اثری را که به آن بازگشایی وابسته باشد.
ساعت نشست را در آزمون لحاظ کنید
زمانمهر رویدادها را بهعنوان ثبت مرجع در UTC نگه دارید. فیلدهای نشست محلی را با یک منطقه زمانی نامگذاریشده مثل America/New_York به دست آورید و از پایگاه داده منطقههای زمانی استفاده کنید که تغییرات تاریخی قواعد را پوشش میدهد. «UTC منهای 5» یا «UTC منهای 4» را بهصورت ثابت وارد نکنید: هیچکدام از این آفستها زمان نیویورک را در تمام طول سال تعریف نمیکنند.
| تصمیم | نمونه سهام | نمونه رمزارز |
|---|---|---|
| ساعت فرضیه | دقایق سپریشده از آغاز نشست عادی | ساعت روز بر مبنای UTC |
| منبع نشست | تقویم بورس، با احتساب تعطیلات و زمانهای بستهشدن زودهنگام | تقویم پیوسته UTC |
| زمانبندی سفارش | رویداد بعدی که پس از سیگنال امکان اجرا دارد | رویداد بعدی که پس از سیگنال امکان اجرا دارد |
سپس هفتههای پیرامون تغییر ساعت را جداگانه بیازمایید. عملکرد را پیش و پس از هر تغییر ساعت تابستانی مقایسه کنید و ببینید بازه برنده با نشست بازار همراه میماند یا در همان ساعت UTC ثابت میماند. اگر برای یافتن بهترین نتیجه، ساعتها، تاریخها و آفستهای زیادی را جستوجو کردهاید، این جستوجو را هم در محاسبه بیشبرازش لحاظ کنید؛ انتخاب ساعت یک آزمون دیگر بوده است.
منطقه زمانی مجموعهای از قواعد است، نه تعداد ساعاتی که باید کم کنید. رویدادها را به UTC ذخیره کنید و هر وقت لازم بود زمان محلی بازار را به دست آورید.
اجرای کاغذی شما باید چه چیزی را تأیید کند
وقتی استراتژی را به اجرای کاغذی میبرید، هم زمانمهر UTC رویداد و هم دقیقه آن نسبت به نشست را ثبت کنید. به این ترتیب سریع متوجه میشوید اگر استراتژی تصور کند بازار ساعت 09:30 باز میشود، اما در عمل ساعت 10:30 به وقت محلی سفارش بفرستد. تعطیلات و بستهشدنهای زودهنگام را هم بررسی کنید؛ برنامه نشست عادی که برای تمام روزهای هفته کپی شده باشد، بهراحتی در روزهای تعطیلی بورس معاملههای خیالی میسازد.
و وقتی ساعتها تغییر میکنند، برای آشنا به نظر رسیدن منحنی سرمایه، در برابر وسوسه «اصلاح» نتیجه با جابهجایی سیگنال مقاومت کنید. اول فرضیه اعلامشده، تقویم و زمانبندی سفارش را بررسی کنید. اگر نتیجه همراه با نشست بازار جابهجا شود، چیزی درباره رفتار نشست آموختهاید. اگر در همان ساعت UTC بماند، چیز دیگری یاد گرفتهاید. بکتست شما باید این تفاوت را حفظ کند.
← همهٔ مطالب


