1 Lampiran Akhirnya, berikut ialah versi 2 indior BADL saya untuk NinjaTrader. Selepas banyak mengutak-atik dan menguji, ia nampaknya berfungsi dengan baik dalam pelbagai keadaan (bersejarah, hidup, terputus, bersambung, utama sahaja, utama dan sub), dan kedua-dua siri data (utama dan sub) sentiasa selaras. Inilah yang baharu dalam versi 2: 1. Formula baharu dan lebih mudah untuk mengira BADL: BADL = BADL sebelumnya ((Spread(Tinggi - Rendah)) * (|Spread|TickSize) * Volume) dengan Spread: a) (Tutup - Buka) jika tidak mempertimbangkan jurang, atau b) (Tutup - Tutup Bar Sebelumnya) jika mempertimbangkan jurang dan TickSize ialah saiz satu tandapip 2. Kira pada Tutup Bar ditetapkan kepada palsu secara lalai, yang bermaksud ia akan kemas kini BADL bar semasa dalam masa nyata dan tunjukkan BADL bar terakhir (separa) apabila diputuskan sambungan daripada suapan data. Walau bagaimanapun, untuk menjimatkan beban CPU ambil perhatian bahawa: a) Jika menggunakan siri sub data, ia hanya akan mengemas kini BADL setiap kali sub bar ditutup, dan bukan pada setiap perubahan tanda. Jadi jika siri sub data ditetapkan kepada 1 minit (disyorkan), ia akan mengemas kini BADL untuk bar carta terakhir setiap minit. b) Jika tidak menggunakan siri sub data, ia hanya akan mengemas kini BADL untuk bar terakhir apabila bar ditutup. 3. Ciri EMA baharu. Ini menjimatkan anda perlu menggunakan EMA ke indior secara manual, dan mempercepatkan pemprosesan kerana EMA dikira dan diplot pada masa yang sama dengan BADL. 4. Ciri Nyahpepijat Baharu. Saya syorkan membiarkan set ini menjadi palsu, walau bagaimanapun, melainkan anda ingin menyemak sama ada bar itu selaras atau mengesyaki terdapat masalah. Ini dia! Parameter lain adalah sama seperti versi 1.
https://www.justgetforex.com/attachm...1772792369.zipBeberapa perkara yang lebih baik (OK untuk langkau): 1. Jika bar (carta) utama anda adalah Harian, dan bar sub (pengiraan) anda ialah Minit, maka sesi NinjaTrader yang anda gunakan untuk instrumen tertentu itu mungkin mempengaruhi tahap utama dan sub. bar adalah serentak. Jika anda tidak menemui sesi yang sesuai untuk menyelaraskannya (saya tidak dapat mencari sesi yang sesuai untuk N225M, misalnya), maka anda boleh menggunakan bar selama 1440 minit dan bukannya setiap hari. Ini sentiasa berfungsi tidak kira instrumen atau sesi yang anda gunakan. 2. Walaupun bar yang disegerakkan dengan sempurna tidak semestinya diperlukan, jika anda taksub dengannya (seperti saya!), maka anda boleh menyemak sejauh mana ia disegerakkan dengan menggunakan mod Nyahpepijat dan mengkaji output dalam tetingkap Output. Jika masa dan volum setiap bar utama dan sub barnya adalah sama, maka data anda adalah selaras dengan sempurna. 3. Pada permulaan bar utama baharu, BADL mungkin sedikit herot. Ini kerana nilai BAD bar utama diperoleh dengan membahagikan nilai BAD subbar terkumpul dengan bilangan subbar. Dalam erti kata lain, ia adalah purata semua sub bar dalam bar utama. Jadi, jika anda memulakan bar utama baharu dengan subbar volum tinggi yang tersebar besar, maka nilai BAD bar utama baharu akan kelihatan berlebihan kerana ia dibahagikan dengan 1 pada ketika ini, dan bukan dengan bilangan bar yang akhirnya dalam bar utama. Saya telah berfikir tentang sentiasa membahagikan sub jumlah BAD dengan jumlah bilangan sub bar, mis. 60 untuk bar utama setiap jam, tetapi saya tidak pasti sama ada ini pendekatan yang betul. Selain itu, sesetengah bar setiap jam tidak akan mempunyai 60 sub bar di dalamnya pada beberapa instrumen (mis. N225M sesi hari tamat pada 15:15, jadi bar 15:00 hingga 16:00 hanya akan mengandungi 15 subbar). 4. Kod telah menjadi agak dipatuhi kerana keperluan untuk memastikan kedua-dua siri data selaras untuk kedua-dua pemprosesan masa sejarah dan masa nyata, dan terutamanya suis antara mereka. Saya telah cuba menjadikannya boleh dibaca walaupun, dengan banyak komen, jadi jika anda ingin menyelami dan melihat, tukarkannya kepada MetaTrader, atau apa sahaja, maka sila lakukan... dan semoga berjaya! Sebarang pertanyaan, sila tanya.