millionchart
English

درس 15: آزمایش در Strategy Lab

یک استراتژی را روی ماه‌ها تاریخچه در Strategy Lab آزمایش کنید: باز کردنش، انتخاب داده و هزینه‌ها، خواندن گزارش و معامله‌ها، و حدهای آن.

درس 15 از 18. نمودار معامله‌های یک استراتژی را روی کندل‌هایی نشان می‌دهد که به آن‌ها نگاه می‌کنید. Strategy Lab جلوتر می‌رود: استراتژی را روی بازه‌ای که خودتان انتخاب می‌کنید آزمایش می‌کند، با مدل دقیق‌تری از حرکت قیمت درون هر کندل و با هزینه‌هایی که تعیین می‌کنید، و یک گزارش کامل می‌نویسد. هر چیزی که نشان می‌دهد شبیه‌سازی روی قیمت‌های گذشته است. هیچ سفارشی هرگز برای بروکر فرستاده نمی‌شود.

یک استراتژی برای آزمایش#

اول این استراتژی را در اسکریپت‌های من ذخیره کنید. ورودی دارد، پس Strategy Lab می‌تواند ورودی‌ها را نشان دهد و عوضشان کند.

Cuprel
strategy "Lab crossover"
    edition = 1
    display = price

setup:
    capital = 10000
    size = sizing.lots(0.1)
    fees = fee.per_lot(3.5)

execution:
    spread = 20 ticks
    slippage = 2 ticks

input fast_length: int = 10, name = "Fast length", min = 1, max = 100
input slow_length: int = 30, name = "Slow length", min = 2, max = 300
input stop_atr: float = 2.0, name = "Stop (ATRs)", min = 0.5, step = 0.5
let fast = tech.ema(close, fast_length)
let slow = tech.ema(close, slow_length)
let atr = tech.atr(14)
if tech.crosses_above(fast, slow)
    orders.enter("Long", side.long)
if tech.crosses_below(fast, slow)
    orders.close("Long")
if position.size > 0
    orders.exit("Stop", "Long", stop = position.avg_price - stop_atr * atr)
plot(fast, name = "Fast", color = color.green)
plot(slow, name = "Slow", color = color.red)

باز کردن Strategy Lab#

سه راه برای ورود هست:

  • دکمهٔ فلاسک Strategy Lab — بک‌تست استراتژی در نوار بالای نمودار (روی صفحهٔ باریک زیر بیشتر › Strategy Lab است)؛
  • دکمهٔ تست در ویرایشگر اسکریپت، که وقتی اسکریپت استراتژی باشد دیده می‌شود: اسکریپت را ذخیره می‌کند و بی‌درنگ در Strategy Lab اجرا می‌کند؛
  • از خود Strategy Lab: دکمهٔ نوشتن استراتژی جدید ویرایشگر را با یک استراتژی کوچکِ آمادهٔ کار باز می‌کند.

Strategy Lab به شکل پنلی زیر نمودار باز می‌شود، روی نماد و تایم‌فریم همان نمودار. برای بلندتر کردنش لبهٔ بالایش را بکشید. زبانه‌هایش تنظیمات، گزارش، معاملات، بهینه‌سازی، پایداری و ژورنال هستند.

تنظیمات#

فیلدچه چیزی را تعیین می‌کند
استراتژیکدام اسکریپت شما آزمایش شود؛ اندیکاتورها جدا فهرست می‌شوند، چون سفارشی نمی‌گذارند
نماد، تایم‌فریم، بازهچه چیزی و در چه تاریخ‌هایی آزمایش شود (از یک ماه تا پنج سال، یا دلخواه با از – تا)
مدل قیمتقیمت درون هر کندل چطور حرکت کند: فقط کندل‌ها (سریع‌ترین، با دورترین دسترسی به گذشته)، کندل‌های 1 دقیقه‌ای (هر دقیقهٔ درون کندل؛ پیش‌فرض)، همهٔ تیک‌ها (بازسازی‌شده) (تیک‌هایی که از هر دقیقه ساخته می‌شوند) یا تیک‌های واقعی (قیمت خرید و فروشِ ثبت‌شده، هر جا که وجود داشته باشد)
حد ضرر و حد سود در یک کندلوقتی داده نمی‌تواند بگوید کدام اول رخ داد، چه فرض شود: قاعدهٔ کلاسیک (کندل صعودی اول پایین می‌رود)، بدترین حالت فرض شود (محتاطانه) یا بهترین حالت فرض شود (خوش‌بینانه)
سپرده (USD)، اهرمحساب آزمایش (تا وقتی عوضشان نکنید 10,000 و 1:100)
حجم سفارشطبق استراتژی، لات ثابت، درصدی از اکوییتی یا مبلغ هر معامله
اسپرد، کمیسیون، اسلیپیج، سواپ، تأخیر سفارشهزینه‌های آزمایش
ورودی‌های استراتژیورودی‌های اسکریپت، فقط برای همین آزمایش

تنظیم‌های سرآیند اسکریپت برای هر هزینه‌ای به کار می‌روند که در تنظیمات عوضش نکرده‌اید: اینجا آزمایش با اسپرد 20 تیک، اسلیپیج 2 تیک و 3.5 برای هر لات انجام می‌شود. فیلدی که در تنظیمات عوض کنید بر سرآیند مقدم است. مارجین از بلوک margin: سرآیند می‌آید. بعد اجرای تست را بزنید.

گزارش و معامله‌ها#

گزارش با یک خط شروع می‌شود: سود خالص و درصد آن. زیر آن ارقام اصلی می‌آیند (سود خالص، ضریب سود، نرخ برد، حداکثر افت سرمایه، معاملات، میانگین هر معامله، نسبت شارپ، ضریب بازیابی)، اکوییتی و افت سرمایه در طول آزمایش، جدولی از ماه‌ها، نتیجه به تفکیک ساعت و روز هفته، و همهٔ ارقام. گزارش این‌ها را هم صریح می‌گوید:

  • وقتی معامله‌ها برای قضاوت خیلی کم‌اند (100 معامله یا بیشتر را هدف بگیرید)؛
  • این‌که آیا میانگین هر معامله ممکن است از روی شانس باشد؛
  • چند کندل هم به حد ضرر و هم به حد سود رسیدند، طوری که ترتیبشان حدس بوده، و چند معامله به آن حدس وابسته‌اند؛
  • کدام سفارش‌ها را مدل بروکر نپذیرفت (کمتر از کوچک‌ترین لات، یا بیشتر از مارجین آزاد)؛
  • وقتی کندل‌ها از آرشیو یک فروشندهٔ داده آمده‌اند و نه از قیمت‌های خود بروکر.

معاملات هر معامله را با جهت، ورود، خروج، حجم، سود، مدت نگه‌داری و نحوهٔ پایانش فهرست می‌کند. آن را بر اساس بردها، باخت‌ها یا خروج‌های حدسی فیلتر کنید و روی یک معامله کلیک کنید تا آن را روی نمودار ببینید. تا وقتی Strategy Lab باز است، نمودار معامله‌های آخرین آزمایش را علامت می‌زند.

ژورنال بعد از هر آزمایش یادداشت‌های اسکریپت و مدل بروکر را نگه می‌دارد.

بهینه‌سازی و پایداری#

بهینه‌سازی آزمایش را بارها با ورودی‌هایی که تیک می‌زنید اجرا می‌کند، هر کدام در یک دامنه (از، تا، گام)، و نتیجه‌ها را رتبه‌بندی می‌کند. می‌تواند انتهای بازه را دیده‌نشده نگه دارد (فوروارد تست) و هر تنظیمی را که پیدا کرده روی آن آزمایش کند، و تنظیم‌هایی را که معامله‌های خیلی کمی دارند کنار می‌گذارد. ستون ثبات می‌گوید آیا تنظیم‌های همسایه با هم هم‌خوانی دارند، و یک یادداشت می‌گوید بعد از این همه امتحان، بهترین نتیجه چقدر ممکن است از شانس باشد.

پایداری می‌پرسد به یک نتیجه تا چه اندازه می‌شود اعتماد کرد: آزمون مونت‌کارلو (همان معامله‌ها با ترتیب‌های دیگر، با نمونه‌گیری دوباره، یا با جا انداختن چند معامله)، بررسی چالش پراپ (آیا استراتژی قوانین یک چالش حساب تأمین سرمایه را پاس می‌کرد) و واک‌فوروارد (بهینه‌سازی، بعد معامله در تکهٔ دیده‌نشدهٔ بعدی، و تکرار این کار).

پلن شما چه چیزهایی دارد#

پلن رایگان نمودارMillionChart Pro
اجرای آزمایش10 بار در ماهبدون محدودیت
تاریخچه‌ای که آزمایش می‌تواند به آن برسد92 روز اخیربدون محدودیت
بهینه‌سازی، واک‌فوروارد، مونت‌کارلونهبله

هر اجرای تست، از جمله تست ویرایشگر، یک اجرا حساب می‌شود. وقتی اجراهای ماه تمام شود، Strategy Lab این را می‌گوید و به صفحهٔ پلن‌ها اشاره می‌کند. مهمان نمی‌تواند آزمایش اجرا کند.

امتحان کنید#

  • مدل قیمت را از کندل‌های 1 دقیقه‌ای به فقط کندل‌ها تغییر دهید و دوباره اجرا کنید. بخش داده‌ها در گزارش می‌گوید چند حدس درون کندل اثر داشته است.
  • اسپرد را روی یک مقدار ثابت دو برابر بگذارید و دوباره اجرا کنید. سود خالص را با آزمایش اول مقایسه کنید.
  • بازه را روی ماه گذشته و بعد روی بازه‌ای طولانی‌تر بگذارید (در پلن رایگان، آزمایش تا 92 روز عقب می‌رود). ببینید بازهٔ کوتاه چه معامله‌های کمی می‌دهد.
  • زیر ورودی‌های استراتژی، stop_atr را از 2 به 1 تغییر دهید، دوباره اجرا کنید و در معاملات بشمارید چند معامله با حد ضرر بسته شدند.

نقطهٔ بررسی#

  • می‌توانید Strategy Lab را از سه راه باز کنید و استراتژی، نماد، تایم‌فریم و بازه را انتخاب کنید.
  • می‌دانید کدام فیلدهای هزینه از سرآیند اسکریپت می‌آیند و فیلدی که خودتان عوض کنید مقدم است.
  • می‌توانید ارقام اصلی گزارش را بخوانید و یک معامله را روی نمودار پیدا کنید.
  • می‌دانید پلن رایگان چه چیزهایی دارد و هر نتیجه یک شبیه‌سازی است.

بعدی: درس 16: نتیجه‌هایی که زیادی خوب به نظر می‌رسند