Backtests forex anda benar-benar tidak berguna jika anda tidak menguji kecekapan kemasukan statistik dan kecekapan keluar daripada strategi. Setiap orang yang berjalan backtest yang tidak dapat tidak melaporkan dolar yang diperolehi sebagai hasil. Faktor-faktor lain seperti yang wujud menang-rata untuk kerugian, faktor keuntungan dan nisbah Sharpe yang, tetapi mereka tidak memberitahu anda apa-apa yang berguna sehingga langkah terakhir mereka bentuk satu sistem perdagangan automatik.
Cara yang betul untuk menguji strategi yang perlu memberi fokus kepada soalan, “adalah strategi saya sekeping sampah?” Kebanyakan orang cuba untuk membuktikan diri mereka betul. Ujian sebenar ialah tidak dapat membuktikan diri anda salah. Satu-satunya cara untuk melakukannya adalah melalui pendekatan statistik.
Pintu Masuk dan Keluar Kecekapan
Kecekapan meletakkan beberapa keras untuk apa yang peratusan pelbagai perdagangan tersedia bahawa strategi tawan. Tetingkap perdagangan bermula pada bar di mana perdagangan yang memasuki pasaran. Tetingkap ditutup apabila keluar perdagangan.
Jumlah tetingkap boleh didapati adalah tinggi tertinggi tolak rendah terendah di tingkap. Mengira masuk dan keluar kecekapan hanya langkah-langkah apa peratusan yang tetingkap bahawa strategi anda cenderung untuk menangkap. Mengambil purata semua daripada perdagangan dan anda mendapatkan kecekapan keseluruhan.
Kecekapan Entry formula
Formula untuk perdagangan yang panjang: (Tertinggi tinggi – harga kemasukan) ÷ (Tertinggi tinggi – terendah rendah)
Formula untuk perdagangan yang singkat: (harga kemasukan – terendah rendah) ÷ (Tertinggi tinggi – terendah rendah)
Kecekapan Keluar formula
Formula untuk perdagangan yang panjang: (Harga Keluar – terendah rendah) ÷ (Tertinggi tinggi – terendah rendah)
Formula untuk perdagangan yang singkat: (Tertinggi tinggi – harga keluar) ÷ (Tertinggi tinggi – terendah rendah)
Ambil satu contoh di mana anda membeli mata wang hipotetikal di 150 dan menjualnya di 170. Yang rendah terendah antara masa masuk dan keluar adalah 140. Harga yang kemudian berlari sepanjang jalan sehingga ke 200 sebelum menetap kembali ke 170, yang mana keluar itu berlaku.
Kecekapan kemasukan adalah (200-150) ÷ (200-140) = 50 ÷ 60 = 83%. Hampir sesiapa akan bersetuju bahawa ini membuat untuk kemasukan besar.
Kecekapan keluar adalah (170-140) ÷ (200-140) = 30 ÷ 60 = 50%. Sebahagian besar bersetuju bahawa jalan keluar akan ideal berlaku lebih awal daripada yang berlaku.
Kecekapan tidak berubah melalui surat cara atau masa bingkai
Salah satu masalah utama yang kita hadapi dengan backtests forex adalah set yang terhad. Hal ini terutama berlaku bagi mereka yang berminat untuk menguji strategi jangka panjang seperti yang pada H4 carta atau D1. Perkara yang indah tentang masuk dan keluar kecekapan adalah bahawa mereka tidak berbeza daripada carta untuk merangka atau tempoh untuk tempoh.
Saya suka untuk melompat ke carta M1 untuk ujian kecekapan. Data yang hampir tidak berkesudahan. Saya tidak perlu bimbang tentang kehabisan. Perkara yang menarik adalah bahawa saya tahu apabila saya pindah semula ke carta H4, kecekapan tidak sepatutnya menukar lebih daripada ± 5%.
Jika anda melihat kecekapan yang berbeza terlalu banyak, maka anda mungkin tidak mempunyai perdagangan yang cukup untuk membentuk kumpulan statistik yang signifikan. Pengalaman saya memberitahu saya bahawa 75 perdagangan biasanya mendapat sangat dekat dengan kecekapan sebenar. 100 perdagangan atau lebih adalah lebih baik. Apabila saya menjalankan ujian ke atas carta M1, Saya sering mendapatkan beberapa ribu perdagangan sepanjang beberapa bulan. Nombor yang besar boleh memberitahu anda dengan banyak keyakinan betapa teguh parameter strategi ini benar-benar adalah.
Biasanya, anda boleh menganggap bahawa mana-mana keputusan yang termasuk dalam 45-55% adalah hasil daripada satu rawak, proses stokastik. Apabila saya melihat backtests mereka menjalar sehingga ke orang-orang halangan seperti 54.9% atau 55.1%, keputusan tidak dapat tidak kembali ke tangki di sekitar 50% tanda.
Rawak hasil perdagangan dan keuntungan dolar
Saya ingin seksyen ini adalah kira-kira bagaimana untuk membuat wang dengan kecekapan rawak. Malangnya, kita mesti meliputi bagaimana rambang boleh menyebabkan eurphoria tidak wajar.
Saya telah berminat dengan konsep kaedah rambang untuk beberapa tahun sekarang. Ahli matematik merujuk kepadanya dengan nama yang lebih legap daripada “proses stokastik”. Walaupun nama bukan sensical, ia hanya satu cara mewah untuk mengatakan kajian rambang – bagaimana ia berubah, pengedarannya, sejauh mana ia “berjalan”, dan lain-lain.
Semalam, Saya menggunakan analogi syiling lambungan untuk menggambarkan bagaimana Strategi Martingale adalah probabilistically menemui kegagalan. Satu konsep yang menarik yang saya tidak menyebut berkaitan dengan gerakan Brownian. Walaupun dengan satu set hasil rawak, perdagangan akan pergi pada perjalanan rawak dari titik permulaan.
Einstein mendapat kredit sebenar untuk menyelesaikan matematik di sebalik konsep, walaupun namanya tidak di jangka. Beliau menunjukkan bahawa jarak satu proses rawak akan diikuti ialah punca kuasa dua bilangan percubaan. Jika kita membuat keputusan untuk flip duit syiling 60 kali, kita tahu bahawa 50% masa yang jatuh di atas kepala dan yang lain 30 pada ekor.
Ia sebenarnya ternyata bahawa kita perlu menjangkakan berat sebelah sangat sedikit bilangan sama ada pemenang atau rugi, walaupun kita tidak tahu yang mana satu. Ia rawak. Yang berat sebelah tepat, ke mana sahaja ia lebih suka pergi, harus sama √60, yang bekerja keluar ~ 7. Hasil kepala seharusnya terdiri daripada 23-37, dengan hasil ekor yang membentuk perbezaan.
Tujuh dagangan daripada enam puluh kuat mengubah peratusan, walaupun kita tahu bahawa ia benar-benar sepatutnya 50%. Jika kepala hanya datang 23 kali daripada 60, itulah 38%. Masalahnya bukan dengan duit syiling. Ia dengan bilangan percubaan. Seperti yang anda lakukan nombor besar meningkatkan laluan, berat sebelah rawak berkurangan dengan ketara dari segi ketepatan peratus. 50,000 dagangan, contohnya, hendaklah menunjukkan lebihan sebanyak lebih kurang 223 perdagangan memihak kepada menang atau kalah. Julat ketepatan termasuk dalam 1% daripada 50% mana-mana pihak, peningkatan yang dramatik.
Risiko keluk sesuai
Curve pemasangan kecekapan rawak berkaitan dengan idea gerakan Brownian. Mari kita mengatakan bahawa kita menggunakan strategi yang saya tahu tidak akan menunjukkan kemasukan atau keluar kecekapan: crossover purata bergerak. Saya telah pergi melalui strategi ini enam cara dari hari Ahad, hampir secara eksklusif atas perintah pelanggan. Ia tidak akan berfungsi sebagai strategi automatik. Tiada set rahsia tempoh cepat dan perlahan yang akan membuka kunci kunci tersembunyi untuk mendapatkan keuntungan.
Kebanyakan peniaga, berpengalaman atau tidak, menyalahgunakan backtester dengan mencari satu set parameter yang menghasilkan keuntungan dolar yang paling. Mereka keluk muat ujian mereka untuk mengoptimumkan untuk keuntungan maksimum. Apa yang sebenarnya berlaku ialah bahawa peniaga-peniaga untuk mengoptimumkan jumlah drift rawak yang telah berlaku.
Apabila saya menggunakan contoh 50,000 perdagangan mewujudkan hanyut semula jadi 223, Saya menyebutnya dengan maksud menunjukkan bagaimana sedikit ia mengurangkan kesilapan dalam peratus accurracy sebenar. Akibat lain untuk sistem perdagangan adalah bahawa sebagai peratusan ralat berkurangan, berat sebelah yang semula jadi dalam hasil anda peningkatan. Membabi buta berjalan pengoptimasi yang hanya memilih set kombinasi yang menghasilkan gabungan dua kriteria:
- The drift yang berlaku untuk bekerja atas nama yang set parameter
- Keuntungan dan kerugian yang berbeza dengan mereka parameter. Keuntungan dolar secara semulajadi perubahan kerana kedua-dua purata bergerak menyeberang di tempat-tempat yang berbeza
Anda memerlukan alat seperti kecekapan untuk mengawal daripada jenis hasil rawak. Ia satu-satunya kaedah yang saya tahu yang muktamad menyatakan sama ada atau tidak strategi yang berkelakuan dalam cara yang rawak. Saya terutamanya suka fakta bahawa ia pecah unsur-unsur ke dalam dua daripada tiga komponen asas strategi perdagangan: kemasukan, keluar, dan kedudukan saiz.
Strategi berkesan tidak berfungsi setiap masa
Jawatan saiz menandakan halangan terakhir untuk membina strategi perdagangan automatik sepenuhnya anda. Satu set peraturan yang menghasilkan entri statistik efisien yang dipadankan dengan keluar cekap tidak semestinya membuat wang. Nilai setiap setup perdagangan boleh berbeza-beza, terlalu.
Setiap strategi mengandungi set berbeza menang dan kalah. Setiap pemenang dan yang kalah berbeza dalam nilai dolar yang. Apa sahaja pendekatan pengurusan wang yang anda mengambil memerlukan mengimbangi nisbah yang menang dan kalah dengan cara yang menormalkan keputusan setiap perdagangan. Anda ideal ingin menghapuskan variasi dalam nilai dolar. 20 dagangan pip perlu mendapat atau kehilangan dengan tepat sebanyak yang 100 dagangan pip.
Yang seolah-olah bertentangan dengan intuisi. Kebanyakan peniaga mahu menang berkadaran dengan saiz peluang. Ia adalah lebih baik dari perspektif sistem untuk sepenuhnya mengabaikan saiz dan peluang untuk membuat setiap perdagangan bernilai jumlah yang sama. Pertaruhan lebih kurang dengan setiap perdagangan berkesan menormalkan nilai setiap perdagangan.
Menggunakan stop loss menonjol sebagai calon jelas untuk menetapkan berapa banyak perdagangan yang bernilai. Kelemahan teruk ialah ia hampir sentiasa memberi kesan negatif kecekapan keluar. Setiap kali saya boleh pergi dengannya, Saya selalu mengesyorkan menggunakan keluar berasaskan pasaran dan bukannya kerugian berhenti sewenang-wenangnya. Peniaga biasanya menjerit di bahagian atas paru-paru mereka apabila mereka mendengar saya mengatakan ini. Saya hanya bercakap sebagai pembangun sistem. Nombor-nombor itu apa yang mereka.
Saya suka artikel ini. Perenggan yang kira-kira “Risiko keluk sesuai” menarik… Ia juga dipanggil dalam buku Ernie Chan (Perdagangan kuantitatif: Bagaimana untuk membina perniagaan anda sendiri Algorithmic Trading) “biases mengintip dan data-menanya” Itulah sebabnya mengapa dia menasihati untuk mempunyai dua bahagian bagi data anda “dalam contoh data” (untuk mengoptimumkan seting) dan “daripada sampel data” (untuk menguji seting)
Konsep ujian “keberkesanan” atau “kecekapan” pintu keluar/masuk titik juga adalah menarik… Itulah yang lain sudut pandangan yang saya mungkin akan cuba untuk mempertimbangkan dalam backtests seterusnya saya.
Saya pernah melihat satu idea yang tidak hadir dalam artikel anda yang dipanggil “berjalan kaki hadapan analisis” WFA atau “berjalan kaki ke hadapan pengoptimuman” WFO… gambar yang kadang-kadang lebih baik daripada teks… https://www.google.fr/search?q=walk+forward+optimization
Apakah pendapat anda mengenai cara ini backtesting / mengoptimumkan ?
Hi Femto,
Terima kasih untuk komen anda. Saya sangat mengesyorkan buku Ernie Chan. Ia duduk dengan bangganya di rak buku saya.
Berjalan kaki hadapan analisis adalah tepat sama idea yang dijelaskan dari Chan dengan kecenderungan mengintip dan data-menanya. Berjalan ke hadapan adalah terminologi timangan diterima. Bagi pendapat saya, berjalan kaki ke hadapan adalah kaedah yang hanya boleh diterima bagi menguji strategi.
Saya tahu ia mungkin kelihatan bodoh atau bisu,
Seperti yang kita tahu, Backtesting walkforward ujian adalah untuk menyemak jika ennough teguh sistem berdagang dengan daripada sampel data.
Membolehkan berkata kami dioptimumkan dalam insample data 2000-2008, kemudian menguji ia pada sampel data-data di 2008-2013. Jika strategi ini masih menjana keuntungan dalam 2008-2013 outsample data, Jadi sistem ennough yang teguh.
Kini bagaimana pula jika kita dioptimumkan data dalam 2008-2013 seperti dalam data sampel, kemudian jalankan ujian pada 2000-2013. Saya pernah melihat sesetengah saya ujian yang menjana keuntungan juga di belakang orang-orang daripada sampel. Jadi kita boleh lihat, sistem adalah robbust juga untuk keadaan pasaran pada masa lalu kita tidak dioptimumkan ia.
Masalahnya ialah, kami telah dioptimumkan data dengan hampir dengan semasa keadaan pasaran. Som yang mempunyai lebih banyak keupayaan menyesuaikan diri kepada keadaan pasaran semasa dengan Buktikan itu daripada robustnest di keluar data pasaran sampel pada masa lalu.
Saya rasa tempat yang walkforward adalah untuk memiliki keteguhan dalam keluar data sampel yang tidak dioptimumkan. Apabila sistem yang mempunyai keberkesanan yang sama dengan orang-orang daripada sampel ujian ke belakang, Kenapa tidak kita ambil itu?
Dan satu lagi perkara tidak, di mana kami akan menukarkan koney sebenar kami pada masa akan datang, tetapi sebenarnya untuk berdagang wang sebenar kami dalam “daripada keadaan sampel / tidak diketahui data/pasaran”.
Apa-apa yang kami tidak dioptimumkan adalah untuk “daripada keadaan pasaran sampel tidak”. Jadi saya rasa , berjalan kaki ke belakang ujian ( Saya tidak tahu apa untuk menamakan idea ini ) mempunyai fullfill ke orang keluar keteguhan sampel jika ia membuat keuntungan juga dalam sampel keluar lepas. Sudah tentu dengan manfaat daripada lebih banyak keupayaan menyesuaikan diri kepada situasi pasaran semasa sejak optimsation dalam proses adalah yang terdekat dengan pasaran semasa.
Mungkin akan melakukan dapat dicapai dengan jayanya bulanan tiap-tiap, atau jika terdapat beberapa aspek asas seperti sejarah pengeluaran yang melanggar, pn yang kita re-optimzed sekali lagi untuk masa lalu 2-3 tahun dan juga menyemak keberkesanan pengoptimuman ini bakal ke belakang daripada sampel.
Perkara ini membuat rasa statistik? Sila beritahu saya tahu anda oppinion
salam mesra
Odie
Hei Odie,
Terdapat tiada teorem matematik yang saya boleh berikan untuk menyangkal idea. Apa yang saya rasa amat tentang adalah bahawa ia tidak bekerja.
Katakan anda mengoptimumkan bagi 2008-2010, kemudian “ujian ke hadapan” idea dari 2000-2007. Sedikit sebanyak, idea sudah dikenali dan belajar pada masa yang anda uji.
Saya benar-benar menghabiskan bulan mengalami idea ini sangat. Pelanggan yang ditugaskan saya beriadah manual Nya strategi dagangan, berdasarkan data yang dibekalkan dari 2010. Saya diuji algoritma saya, yang melakukan kerja yang saksama daripada menghampiri perdagangan Nya. Saya telah tertanya-tanya tentang prestasi terlebih dahulu, Jadi saya berlari ujian sepanjang jalan balik ke 2000. Keputusan, tidak menghairankan, telah sama-sama pepejal. Jika saya berhenti di sini, Ia akan kelihatan seperti 10 tahun prestasi dioptimumkan pasang setahun satu.
Kemudian, bersama-sama datang yang ditakuti berjalan kaki hadapan ujian. Keputusan yang benar-benar runtuh. “Percubaan MARA” data terdahulu tidak mencapai apa-apa.
Terima kasih untuk soalan yang besar!
Hi Shaun,
Tahniah pada laman web anda. Banyak pepejal maklumat di sini. Saya baru saja membaca dengan faedah artikel anda membincangkan konsep mengukur kemasukan dan keluar kecekapan. Anda telah disediakan Formula, tetapi anda tidak menjelaskan bagaimana untuk memohon mereka. Saya sedang dalam proses untuk backtesting beberapa strategi dalam MT4. Adakah mungkin untuk kod Formula ke dalam EA saya menggunakan untuk backtesting?
Saya tidak sabar-sabar untuk mendengar balik daripada anda.
drofwarc
Hi drofwarc,
Saya telah jujur berpindah dari kecekapan alat analisis yang berbeza. Kecekapan adalah masih kukuh untuk menolak Tempahan unadvantaged strategi masuk dan keluar. Yang berkata, Ia tidak bermakna bahawa apa yang tinggal ialah bernilai Menyimpan.
Ia bukanlah bernilai bangunan pengukuran kecekapan anda boleh program strategi yang cepat dalam TradeStation atau NinjaTrader untuk mendedahkan nombor yang sama.
–Shaun