Moving average strategy backtest


Moving Averages: Strategi 13 Oleh Casey Murphy. Analis Senior ChartAdvisor Investor yang berbeda menggunakan moving averages untuk berbagai alasan. Beberapa menggunakannya sebagai alat analisis utama mereka, sementara yang lain hanya menggunakannya sebagai pembangun kepercayaan untuk mendukung keputusan investasi mereka. Pada bagian ini, hadir dengan baik beberapa jenis strategi yang berbeda - memasukkannya ke dalam gaya trading Anda terserah Anda Crossover Crossover adalah jenis sinyal yang paling dasar dan disukai di antara banyak pedagang karena menghilangkan semua emosi. Jenis crossover yang paling mendasar adalah ketika harga aset bergerak dari satu sisi rata-rata bergerak dan ditutup di sisi lain. Crossover harga digunakan oleh pedagang untuk mengidentifikasi pergeseran momentum dan dapat digunakan sebagai strategi masuk atau keluar dasar. Seperti yang dapat Anda lihat pada Gambar 1, sebuah salib di bawah rata-rata bergerak dapat menandakan dimulainya tren turun dan kemungkinan akan digunakan oleh pedagang sebagai sinyal untuk menutup posisi lama yang ada. Sebaliknya, titik di atas rata-rata bergerak dari bawah mungkin menunjukkan awal dari tren kenaikan baru. Tipe kedua crossover terjadi ketika rata-rata jangka pendek melewati rata-rata jangka panjang. Sinyal ini digunakan oleh para pedagang untuk mengidentifikasi bahwa momentum bergeser ke satu arah dan pergerakan yang kuat cenderung mendekati. Sinyal beli dihasilkan bila rata-rata persilangan jangka pendek di atas rata-rata jangka panjang, sementara sinyal jual dipicu oleh persimpangan rata-rata jangka pendek di bawah rata-rata jangka panjang. Seperti yang dapat Anda lihat dari grafik di bawah ini, sinyal ini sangat objektif, itulah sebabnya mengapa sangat populer. Triple Crossover dan Moving Average Ribbon Rata-rata pergerakan tambahan dapat ditambahkan ke grafik untuk meningkatkan validitas sinyal. Banyak pedagang akan menempatkan rata-rata pergerakan lima, 10, dan 20 hari ke dalam grafik dan menunggu sampai rata-rata lima hari melewati yang lain ini umumnya merupakan tanda beli utama. Menunggu rata-rata 10 hari untuk menyeberang di atas rata-rata 20 hari sering digunakan sebagai konfirmasi, sebuah taktik yang sering mengurangi jumlah sinyal palsu. Meningkatkan jumlah moving averages, seperti yang terlihat pada metode triple crossover, adalah salah satu cara terbaik untuk mengukur kekuatan tren dan kemungkinan tren akan berlanjut. Ini menimbulkan pertanyaan: Apa yang akan terjadi jika Anda terus menambahkan moving averages Beberapa orang berpendapat bahwa jika satu rata-rata bergerak berguna, maka 10 atau lebih harus lebih baik lagi. Ini membawa kita ke teknik yang dikenal sebagai pita rata-rata bergerak. Seperti yang dapat Anda lihat dari grafik di bawah ini, banyak rata-rata bergerak ditempatkan pada bagan yang sama dan digunakan untuk menilai kekuatan dari tren saat ini. Bila semua rata-rata bergerak bergerak ke arah yang sama, tren dikatakan kuat. Pembalikan dikonfirmasi saat rata-rata melintang dan menuju ke arah yang berlawanan. Ketanggapan terhadap perubahan kondisi dihitung dengan jumlah periode waktu yang digunakan dalam moving averages. Semakin pendek periode waktu yang digunakan dalam perhitungan, semakin sensitif rata-ratanya terhadap sedikit perubahan harga. Salah satu pita yang paling umum dimulai dengan rata-rata pergerakan 50 hari dan menambahkan rata-rata dalam kenaikan 10 hari hingga rata-rata akhir 200. Rata-rata jenis ini bagus untuk mengidentifikasi tren turun jangka panjang. Filter Filter adalah teknik yang digunakan dalam analisis teknis untuk meningkatkan kepercayaan diri terhadap suatu perdagangan tertentu. Misalnya, banyak investor dapat memilih untuk menunggu sampai sebuah persimpangan keamanan di atas rata-rata bergerak dan paling sedikit 10 di atas rata-rata sebelum melakukan pemesanan. Ini adalah upaya untuk memastikan crossover valid dan mengurangi jumlah sinyal palsu. Kelemahan dari mengandalkan filter terlalu banyak adalah beberapa keuntungan diberikan dan hal itu bisa menyebabkan perasaan seperti Anda merindukan kapal. Perasaan negatif ini akan berkurang seiring berjalannya waktu karena Anda selalu menyesuaikan kriteria yang digunakan untuk filter Anda. Tidak ada aturan atau hal yang harus diwaspadai saat menyaringnya hanya alat tambahan yang memungkinkan Anda berinvestasi dengan percaya diri. Moving Average Envelope Strategi lain yang menggabungkan penggunaan moving averages dikenal sebagai amplop. Strategi ini melibatkan merencanakan dua band di sekitar rata-rata bergerak, terhuyung-huyung oleh tingkat persentase tertentu. Misalnya, pada bagan di bawah ini, sebuah amplop 5 ditempatkan di sekitar rata-rata pergerakan 25 hari. Pedagang akan melihat band-band ini untuk melihat apakah mereka bertindak sebagai area support atau resistance kuat. Perhatikan bagaimana perpindahannya sering membalikkan arah setelah mendekati salah satu level. Sebuah pergerakan harga di luar band dapat menandakan masa kelelahan, dan trader akan melihat pembalikan menuju rata-rata tengahnya. Mengikuti Crossover Rata-rata Bergerak dengan Python dengan panda. Pada artikel sebelumnya tentang Penelitian Backtesting Environments Dengan Python Dengan Pandas kita menciptakan sebuah objek. Berorientasi pada penelitian backtesting lingkungan dan diuji pada strategi peramalan acak. Pada artikel ini kami akan menggunakan mesin yang kami perkenalkan untuk melakukan penelitian mengenai strategi aktual, yaitu Moving Average Crossover on AAPL. Strategi Crossover Average Crossover Teknik Moving Average Crossover adalah strategi momentum sederhana yang sangat terkenal. Hal ini sering dianggap sebagai contoh Hello World untuk perdagangan kuantitatif. Strategi yang digariskan di sini adalah long-only. Dua filter rata-rata bergerak sederhana yang terpisah dibuat, dengan berbagai periode waktu tunggu, dari rangkaian waktu tertentu. Sinyal untuk membeli aset terjadi ketika moving average moving average yang lebih pendek melebihi rata-rata moving average lookback yang lama. Jika rata-rata yang lebih lama kemudian melebihi rata-rata yang lebih pendek, aset tersebut dijual kembali. Strategi ini berjalan dengan baik saat deret waktu memasuki periode tren kuat dan perlahan membalikkan tren. Untuk contoh ini, saya telah memilih Apple, Inc. (AAPL) sebagai rangkaian waktu, dengan tampilan singkat 100 hari dan tampilan balik 400 hari yang panjang. Ini adalah contoh yang disediakan oleh zipline algorithmic trading library. Jadi jika kita ingin menerapkan backtester kita sendiri, kita perlu memastikan bahwa itu sesuai dengan hasil zipline, sebagai sarana dasar validasi. Implementasi Pastikan mengikuti tutorial sebelumnya disini. Yang menjelaskan bagaimana hirarki objek awal untuk backtester dibangun, jika kode di bawah ini tidak akan berhasil. Untuk implementasi khusus ini saya telah menggunakan library berikut: Implementasi macross. py membutuhkan backtest. py dari tutorial sebelumnya. Langkah pertama adalah mengimpor modul dan objek yang diperlukan: Seperti pada tutorial sebelumnya, kita akan mengelompokkan kelas dasar Strategi abstrak untuk menghasilkan MovingAverageCrossStrategy. Yang berisi semua rincian tentang bagaimana menghasilkan sinyal saat rata-rata bergerak AAPL saling silang. Objek membutuhkan shortwindow dan longwindow untuk beroperasi. Nilai telah ditetapkan ke default masing-masing 100 hari dan 400 hari, yang merupakan parameter yang sama yang digunakan pada contoh utama zipline. Rata-rata bergerak dibuat dengan menggunakan fungsi rollingmanan pandas pada harga tutup bar tutup dari saham AAPL. Setelah rata-rata pergerakan individu telah dibangun, Seri sinyal dihasilkan dengan menetapkan kolom sebesar 1,0 bila rata-rata bergerak pendek lebih besar daripada rata-rata bergerak yang panjang, atau 0,0 sebaliknya. Dari posisi inilah pesanan bisa dihasilkan untuk mewakili sinyal trading. MarketOnClosePortfolio adalah subkelas dari Portofolio. Yang ditemukan di backtest. py. Hal ini hampir sama dengan implementasi yang dijelaskan di tutorial sebelumnya, dengan pengecualian bahwa perdagangan sekarang dilakukan secara Close-to-Close, bukan Open-to-Open. Untuk rincian tentang bagaimana objek Portofolio didefinisikan, lihat tutorial sebelumnya. Ive meninggalkan kode untuk kelengkapan dan untuk menjaga agar tutorial ini mandiri: Setelah kelas MovingAverageCrossStrategy dan MarketOnClosePortfolio telah ditetapkan, fungsi utama akan dipanggil untuk mengikat semua fungsi bersama-sama. Selain itu kinerja strategi akan diperiksa melalui sebidang kurva ekuitas. Objek pandas DataReader mendownload harga OHLCV dari saham AAPL untuk periode 1 Januari 1990 sampai 1 Januari 2002, dimana sinyal DataFrame dibuat untuk menghasilkan sinyal lama. Selanjutnya portofolio dihasilkan dengan basis modal awal 100.000 USD dan imbal hasil dihitung pada kurva ekuitas. Langkah terakhir adalah menggunakan matplotlib untuk merencanakan plot dua gambar dari harga AAPL, yang dilapisi dengan rata-rata bergerak dan sinyal buysell, serta kurva ekuitas dengan sinyal buysell yang sama. Kode pemodelan diambil (dan dimodifikasi) dari contoh penerapan zipline. Output grafis dari kode tersebut adalah sebagai berikut. Saya menggunakan perintah paste IPython untuk memasukkan ini langsung ke konsol IPython saat berada di Ubuntu, sehingga output grafis tetap terlihat. The upticks merah muda mewakili pembelian saham, sedangkan downticks hitam mewakili menjual kembali: Seperti dapat dilihat strategi kehilangan uang selama periode, dengan lima perdagangan round-trip. Hal ini tidak mengherankan mengingat perilaku AAPL selama periode tersebut, yang pada tren sedikit menurun, diikuti oleh kenaikan yang signifikan yang dimulai pada tahun 1998. Periode lookback dari sinyal rata-rata bergerak agak besar dan ini berdampak pada keuntungan perdagangan akhir , Yang sebaliknya mungkin telah membuat strategi menguntungkan. Pada artikel selanjutnya kita akan menciptakan cara yang lebih canggih untuk menganalisis kinerja, serta menggambarkan bagaimana mengoptimalkan periode lookback dari sinyal rata-rata bergerak individual. Baru Memulai dengan Quantitative Trading Secara tipikal, dua moving averages dapat digunakan untuk membuat strategi forex (EA untuk MT4) dengan aturan-aturan ini: Beli bila moving average bergerak rata-rata berada di atas moving average moving average Sell bila moving average jangka panjang di atas Moving average periode pendek Pada grafik berikut dari Terminal MetaTrader, garis kuning adalah moving average periode pendek (Periodasse9) dan garis merah adalah moving average jangka panjang (Periode 18). Dengan menganalisa grafik, kita bisa menulis ulang aturan perdagangan atau sinyal forex sebagai: Beli bila garis kuning berada di atas garis merah Jual bila garis kuning berada di bawah garis merah Alih-alih menghabiskan waktu lama mengkodekan strategi forex ini, dengan Molanis Strategy Builder Anda bisa membuat diagram perdagangan yang mewakili strategi rata-rata bergerak dalam hitungan menit. Cukup seret dan lepaskan dua blok Analisis Teknis, satu blok Beli dan satu blok Jual. Hubungkan mereka dan atur parameter blok untuk mendapatkan diagram seperti berikut ini: Diagram perdagangan ini memiliki dua jalur perdagangan. Yang kiri disorot. Ini berasal dari blok START ke blok END. Seseorang bisa membacanya seperti: Beli 1 lot EURCAD (dengan 100 pip Take Profit dan 50 pip Stop Loss) bila moving average bergerak pendek (9) berada di atas moving average moving average (18). Ingatlah untuk membaca diagram perdagangan dalam arah yang berlawanan dengan arus perdagangan. Jalur perdagangan yang benar bisa dibaca sebagai: Jual 1 lot EURCAD (dengan 100 pip Take Profit dan 50 pip Stop Loss) bila moving average moving average (18) berada di atas moving average moving average (9). Membangkitkan kode MQL untuk MetaTrader hanya dengan satu klik Pada Diagram Diagram Trading, klik Menghasilkan Kode MQL4 untuk mendapatkan jendela Kode MQL4. Molanis Strategy Builder memungkinkan Anda untuk membuka expert advisor Anda secara langsung dengan MetaTrader atau menyimpannya sebagai file MQ4. Jangan lewatkan tutorial video kami

Comments

Popular posts from this blog

Mudah forex kantor

Belajar forex in 24 jam

Download robot forex gratis untuk mt4