Anggaran masa bacaan: 14 min

PrescienTrader menambah fungsi AFL berikut kepada AmiBroker. Kebanyakan pengguna hanya perlu menggunakannya PrescienTrader () , Fungsi PTPlotFLDs () dan PTBacktest ().

Jika anda hanya mahu menggunakan PrescienTrader sebagai alat mandiri untuk menganalisis carta, anda boleh hanya dua kali klik Formula PrescienTrader AFL, untuk membuat pane carta PrescienTrader baharu. Anda tidak perlu membaca sisa artikel ini.

Selebihnya fungsi untuk pengguna canggih yang ingin memanggil algoritma kami dari scriPT AFL tersuai, untuk pengembangan sistem perdagangan.


PrescienTrader

PrescienTrader ()
  • Ini adalah fungsi utama yang memaparkan panel carta PrescienTrader, memaparkan semua plot dan menghasilkan laporan di tetingkap Tafsiran.
  • The fungsi tidak menerima parameter, kerana semua parameter ditetapkan dalam tetingkap Parameter AmiBroker.
  • Walaupun ada kemungkinan untuk merancang PrescienTrader pada panel carta harga yang ada, ia mengandungi banyak petunjuk dan grafik yang boleh menyebabkan kekacauan terlalu banyak dan mungkin bertentangan dengan petunjuk yang ada. Oleh itu, kami mengesyorkan membuat panel berasingan, khusus untuk PrescienTrader.
  • Anda mesti menetapkan Kunci API dalam tetingkap Parameter. Jika anda tidak menetapkan Kunci API, PrescienTrader akan memaparkan Kunci API tidak sah mesej.
  • Untuk mengetahui cara menggunakan setiap parameter ini, sila baca artikel, Parameter PrescienTrader.

PTPlotFLD

PTPlotFLD ()
  • Fungsi ini memplot Talian Penandaan Masa Depan (FLD) untuk setiap puncak kitaran yang dikenal pasti oleh PrescienTrader.
  • Fungsi tidak menerima parameter, kerana semua parameter ditetapkan dalam tetingkap Parameter AmiBroker.
  • Oleh kerana FLD berkait rapat dengan harga dan menggunakan skala yang sama dengan harga, kami mengesyorkan membuat FLD pada panel carta harga anda, BUKAN pada panel PrescienTrader.
  • Fungsi ini menggunakan PrescienTrader sebagai sumber datanya untuk menghasilkan plot FLD. Oleh itu, ia MEMERLUKAN PrescienTrader () berfungsi dalam panel carta yang berasingan.
  • Anda boleh menetapkan parameter berikut di tetingkap Parameter:
    • FLD (1-10) - Ini membolehkan anda memilih plot FLD mana yang akan dipaparkan pada carta. Setiap frekuensi puncak kitaran mempunyai plot FLD yang berkaitan, tetapi parameter ini membolehkan anda mengelakkan kekacauan carta, dengan mengehadkan bilangan petak.
    • Segerakkan dengan PrescienTrader - Apabila ini diaktifkan, fungsi akan dijalankan secara automatik sekali sesaat, untuk mengambil data terbaru dari PrescienTrader, memastikan plot FLD tetap diselaraskan dengan analisis kitaran yang dihasilkan oleh PrescienTrader. Sekiranya anda melumpuhkan penyegerakan, anda mungkin perlu memuat semula carta secara manual setiap kali.
  • Fungsi ini menggambarkan FLD masa lalu, sekarang dan masa depan. Walau bagaimanapun, untuk memaparkan masa lalu FLD plot, anda mesti mengaktifkan petunjuk statik di PrescienTrader. Ini kerana frekuensi kitaran berubah dengan setiap bar baru. Oleh itu untuk merancang FLD yang lalu, fungsi tersebut memerlukan akses kepada analisis kitaran masa lalu, yang memerlukan petunjuk statik. Sekiranya penunjuk statik dilumpuhkan, anda hanya akan melihat plot FLD untuk bar semasa dan bar masa depan. Ingat, plot FLD masa depan hanya anggaran dan mungkin berubah apabila bar baru ditambahkan pada carta.

Analisis PTBar

Analisis PTBar (Siri Data, Polaritas, Asas PL, Julat Pandang Balik, Frekuensi Min, Frekuensi Maks, Penapis Harmonik, Kecergasan Min, Kitaran X Terbaik, Bar Analisis, Bar Permulaan Plot, Bar Akhir Plot, Indeks Cache) 

Analisis PTBar melakukan analisis kitaran titik dalam masa pada satu bar. Ia kemudian menghasilkan pelbagai petak dalam julat plot yang ditentukan, mundur dan pilihan, maju dalam masa. Plot mundur dapat digunakan untuk mengesahkan secara visual ketepatan analisis kitaran, dengan mengesahkan bentuknya mengikuti bar harga yang sesuai. Plot ke depan digunakan untuk ramalkan harga masa depan atau untuk melihat ketepatan ramalannya pada bar masa lalu. Ini adalah fungsi yang akan anda gunakan perdagangan secara langsung.

Fungsi ini tidak mengembalikan nilai secara langsung. Sebaliknya, ia mengisi sekumpulan pemboleh ubah AFL, termasuk skalar, tatasusunan dan matriks. Susunan ini boleh diplot seperti array AFL.

Parameter

  • Siri Data (pelbagai)
    • Parameter ini menjangkakan Arahan AmiBroker, yang mengandungi siri data sebenar yang anda mahu analisa. Sebagai contoh, jika anda ingin menganalisis harga penutupan, anda akan lulus AmiBroker terbina dalam Tutup (C) pemboleh ubah, yang merupakan array yang mengandungi harga penutup dari siri data anda.
  • Polariti (bilangan bulat)
    • 0 = Positif
    • 1 = Negatif
  • Asas PL (bilangan bulat)
    • 0 = Amplitud
    • 1 = Kekuatan
  • Julat Penglihatan (bilangan bulat)
    • 1 - 15
  • Frekuensi Min (bilangan bulat)
    • Biasanya 10 - 100
  • Frekuensi Maks (bilangan bulat)
    • Biasanya 150 - 300
  • Penapis harmonik (bilangan bulat)
    • 0 - 100
  • Kecergasan Min (bilangan bulat)
    • 0 - 100
  • Kitaran X Terbaik (bilangan bulat)
    • 1 - 10
  • Bar Analisis (bilangan bulat)
    • Ini adalah indeks bar yang mana analisis akan dilakukan.
    • Semasa melakukan analisis untuk perdagangan langsung, anda akan menetapkan bar analisis sama dengan indeks bar bar terakhir pada carta.
    • AmiBroker memaparkan bar pertama pada carta sebagai nombor bar 1. Walau bagaimanapun, indeks dalaman yang digunakan oleh AFL bermula pada bar 0. Oleh itu, jika anda ingin menganalisis bar tertentu, anda perlu mengurangkan 1 dari nombor bar yang dipaparkan di AmiBroker ke dapatkan nombor bar yang betul. Sekiranya terdapat 5,000 bar pada carta, nombor bar terakhir adalah 4,999, bukan 5,000.
    • Anda boleh menentukan indeks bar lalu untuk melakukan analisa titik waktu untuk bar tersebut. Sebagai contoh, jika anda menetapkan indeks bar sebanyak 1,000, anda kemudiannya boleh membandingkan Baris Prescient dari bar 1,001 ke bar terakhir pada carta, dengan harga bar sebenar untuk bar bar untuk melihat betapa tepat ramalan itu pada masa itu. Semasa membuat petak kitaran, fungsi mengabaikan data harga di sebelah kanan nombor bar yang ditentukan.
  • Bar Permulaan Plot (bilangan bulat)
    • Menentukan indeks bar di mana plot harus bermula.
    • Ia biasanya tidak perlu untuk mengira plot untuk keseluruhan siri. Sebagai contoh, jika paparan carta anda memaparkan 100 bar, anda hanya perlu plot untuk 100 bar, bukan keseluruhan siri.
  • Plot End Bar (bilangan bulat)
    • Menentukan indeks bar di mana plot mesti berakhir.
    • Anda boleh memproyeksikan plot ke masa depan dengan menentukan Plot End Bar lebih besar daripada bilangan bar pada carta.
  • Indeks Cache (bilangan bulat)
    • Fungsi ini mengandungi mekanisme cache dalaman yang bertujuan untuk mencegah pengiriman beberapa permintaan API berturut-turut untuk data yang sama. Cache menyimpan siri data, parameter dan hasil untuk setiap permintaan API. Sekiranya ia menerima siri data dan parameter yang sama dua kali berturut-turut, ia akan melewati permintaan API dan segera mengembalikan hasil cache.
    • Jika anda hanya menganalisis siri data tunggal pada carta, anda harus menetapkan Indeks Cache kepada 0.
    • Jika anda menganalisis beberapa siri data pada carta, anda harus menentukan indeks cache yang unik untuk setiap siri data. Sebagai contoh, jika anda menganalisis tempoh asas, ditambah dua tempoh masa yang lebih tinggi, anda akan menentukan Indeks Cache 0 untuk tempoh asas, Cache Index 1 untuk HTP 1 dan Cache Index 2 untuk HTP 2. Ini akan membuat cache berasingan untuk setiap tempoh masa.

Tanggapan

Susunan AFL:

Setiap elemen dalam susunan ini mewakili bar, bermula dengan bar sifar.

Sekiranya anda menetapkan Plot End Bar kepada nombor yang lebih besar daripada Nilai Terakhir (BarIndex ()), ia akan secara automatik alihkan tatasusunan ke belakang dengan perbezaannya. Anda kemudian boleh memproyeksikan plot ke masa depan dengan menggunakan Petak fungsi XShift parameter.

Sebagai contoh, anggap carta anda mengandungi 5,000 bar, yang bermaksud indeks bar terakhir ialah 4,999. Sekiranya anda menetapkan Plot End Bar hingga 5,009, susunan akan dialihkan ke kiri dengan 10 bar. Anda kemudian menetapkan XShift menjadi 10, untuk merancang 10 bar pada masa akan datang. Oleh kerana array dipindahkan ke kiri dengan 10 bar, plot XShifted akan sejajar dengan carta dengan betul.

  • PTPL - yang Garis prescient plot
  • PTPLSlope - yang cerun Garis Prescient. Nilai positif bermaksud ia condong ke atas dan nilai negatif bermaksud ia merosot ke bawah.
  • PTTrendBar - yang nombor bar relatif dalam trend Prescient Line semasa. Nombor bar pertama dalam setiap tren adalah bar 0 dan semua nombor bar seterusnya adalah relatif dengan bar pertama tren.
  • PTTrendBars - yang jumlah bar dalam trend Prescient Line semasa.
  • PTTrendPct - yang peratusan selesai dari trend Prescient Line semasa. Peratusannya tidak akan pernah mencapai 100, kerana itu bermaksud tren baru telah dimulakan dengan penyelesaian nol persen. Jadi, 100% tren lama bersamaan dengan 0% tren baru.

Matriks AFL:

  • PTCycles - mengandungi satu baris untuk setiap frekuensi kitaran individu, dalam julat yang ditentukan oleh minFrequency dan maxFrequency parameter. Setiap baris mengandungi lapan lajur, dengan nombor lajur yang dikenal pasti oleh pemboleh ubah AFL. Semasa membaca nilai dari matriks, anda harus selalu merujuk nombor lajur menggunakan pemboleh ubah AFL yang berkaitan, daripada mengekod nombor lajur yang sukar. Dengan cara itu, jika nombor lajur berubah pada masa akan datang, kod anda akan tetap berfungsi,
    • Kekerapan (PTColFrequency) - kekerapan kitaran.
    • Amplitud (PTColAmplitude) - amplitud kitaran.
    • Kekuatan (PTColStrength) - kekuatan kitaran, iaitu amplitud dibahagi dengan frekuensi.
    • Mula Bar (PTColStartBar) - indeks bar di mana plot kitaran bermula. Ini digunakan untuk menetapkan fasa yang betul untuk plot kitaran, tetapi secara amnya tidak perlu, kerana fungsinya menyediakan plot untuk anda dalam matriks PTPlots yang dibincangkan di bawah.
    • Kecergasan (PTColFitness) - ukuran statistik sejauh mana boleh dipercayai kitaran ini, dari 0% hingga 100%.
    • Puncak (PTColPeak) - menunjukkan apakah siklus adalah puncak atau tidak dan jika demikian, adakah atau tidak disaring oleh salah satu penapis yang ditentukan dalam tetapan parameter:
      • 0 = Bukan puncak
      • 1 = Puncak sah
      • -1 = Puncak ditapis oleh Kecergasan Min tapis
      • -2 = Puncak ditapis oleh Penapis harmonik
      • -3 = Puncak ditapis oleh Kitaran X Terbaik tapis
    • Cerun (PTColSlope) - menunjukkan sama ada kitaran condong ke atas atau ke bawah. Lereng hanya akan dikira pada kitaran yang merupakan puncak yang sah (Puncak = 1):
      • 1 = Cerun naik
      • -1 = Cerun turun
    • Harga FLD (PTColFLDPrice) - menunjukkan harga FLD kitaran. Ini hanya akan dikira pada kitaran yang merupakan puncak yang sah (Puncak = 1).
  • PTPeaks - yang PTPeaks matriks mengandungi maklumat yang sama dalam format yang sama dengan PTCycles matriks, kecuali ia hanya merangkumi kitaran yang merupakan puncak yang sah (Puncak = 1). Kitaran akan disusun mengikut kekerapan.
  • Petak PTP - yang Petak PTP matriks mengandungi petak untuk setiap kitaran yang merupakan puncak yang sah (Puncak = 1), disusun mengikut frekuensi kitaran. Setiap baris mewakili a frekuensi kitaran puncak dan setiap lajur mewakili a bar. Seperti tatasusunan, jika anda menentukan a Plot End Bar melepasi bar terakhir pada carta, baris matriks akan dialihkan ke kiri dengan perbezaannya. Anda boleh menggunakan MxGetBlock berfungsi untuk menukar baris matriks menjadi susunan AFL.
  • PTFLDPrasa - Matriks PTFLDPrices mengandungi harga FLD untuk setiap kitaran yang merupakan puncak yang sah (Puncak = 1), disusun mengikut frekuensi kitaran. Setiap baris mewakili frekuensi kitaran puncak dan setiap lajur mewakili bar. Matriks ini hanya akan mengandungi harga FLD untuk bar semasa dan bar masa depan. Menggunakan Analisis PTRange berfungsi untuk mendapatkan data FLD yang lalu. Seperti tatasusunan, jika anda menentukan Plot End Bar di luar bar terakhir pada carta, baris matriks akan dialihkan ke kiri dengan perbezaannya. Anda boleh menggunakan fungsi MxGetBlock untuk menukar baris matriks menjadi array AFL.

Skala AFL

  • PTFLDScore - The Skor FLD adalah petunjuk kuat yang dapat membantu mengesahkan atau menolak perdagangan yang dicadangkan oleh Prescient Line dan petunjuk kitaran lain.
    • Skor FLD dikira dengan mengalikan kekuatan atau amplitud (bergantung pada Asas PL menetapkan) setiap frekuensi kitaran puncak dengan 1 atau -1, bergantung pada sama ada harga siri di atas atau di bawah harga FLD, dan menjumlahkan semuanya bersama-sama.
    • Sekiranya Skor FLD adalah positif, ini menunjukkan bahawa pasaran berada dalam keadaan kitaran aliran menaik.
    • Sekiranya Skor FLD adalah negatif, ini menunjukkan bahawa pasaran berada dalam keadaan kitaran aliran menurun.

Analisis PTRange

PTRangeAnalisis (Siri Data, Polaritas, Asas PL, Julat Pandang Balik, Frekuensi Min, Frekuensi Maks, Penapis Harmonik, Kecergasan Min, Kitaran X Terbaik, Bar Mula, Bar Akhir, Susunan Proses)

Analisis PTRange menganalisis sebuah pelbagai bar, mengembalikan point-in-time nilai untuk setiap bar dalam julat yang dianalisis. Memanggil Analisis PTRange untuk julat 1,000 bar sama dengan panggilan Analisis PTBar 1,000 kali, sekali untuk setiap bar dalam julat. Ini adalah fungsi untuk digunakan ujian belakang dan pengoptimuman, TIDAK untuk perdagangan langsung.

Fungsi ini tidak mengembalikan nilai secara langsung. Sebaliknya, ia mengisi satu set tatasusunan dan matriks AFL. Susunan ini boleh diplot seperti array AFL.

Parameter

  • Siri Data (pelbagai)
    • Parameter ini menjangkakan Arahan AmiBroker, yang mengandungi siri data sebenar yang anda mahu analisa. Sebagai contoh, jika anda ingin menganalisis harga penutupan, anda akan lulus AmiBroker terbina dalam Tutup (C) pemboleh ubah, yang merupakan array yang mengandungi harga penutup dari siri data anda.
  • Polariti (integer atau tatasusunan
    • 0 = Positif
    • 1 = Negatif
  • Asas PL (bilangan bulat atau tatasusunan)
    • 0 = Amplitud
    • 1 = Kekuatan
  • Julat Penglihatan (bilangan bulat atau tatasusunan)
    • 1 - 15
  • Frekuensi Min (bilangan bulat atau tatasusunan)
    • Biasanya 10 - 100
  • Frekuensi Maks (bilangan bulat atau tatasusunan)
    • Biasanya 150 - 300
  • Penapis harmonik (bilangan bulat atau tatasusunan)
    • 10 - 100
  • Kecergasan Min (bilangan bulat atau tatasusunan)
    • 0 - 95
  • Kitaran X Terbaik (bilangan bulat atau tatasusunan)
    • 1 - 10
  • Bar Mulai / Akhir (bilangan bulat)
    • The Mula Bar dan Akhir bar parameter menentukan julat bar untuk dianalisis. Tidak seperti Analisis PTBar, Bar Akhir mungkin TIDAK melebihi indeks bar nilai terakhir pada carta. Fungsi ini digunakan untuk ujian belakang, bukan perdagangan secara langsung, oleh itu tidak masuk akal untuk memproyeksikan plot ke masa depan.
  • Susunan Proses (bilangan bulat)
    • Parameter ini menentukan sama ada fungsi memproses parameter sebagai bilangan bulat atau tatasusunan. Ini hanya berlaku untuk parameter yang boleh berupa bilangan bulat atau tatasusunan, yang merangkumi Polaritas, Dasar PL, Julat Pandang Balik, Frekuensi Min, Frekuensi Maks, Penapis Harmonik, Kecergasan Min dan Siklus X Terbaik.
    • Biasanya, parameter ini adalah bilangan bulat, yang berarti pengaturan parameter yang sama akan diterapkan ke seluruh rentang bar yang dianalisis. Ini adalah tetapan lalai dan kebanyakan pengguna harus membiarkannya sahaja. Namun, jika anda pengguna yang maju, ini memberi anda kemampuan yang sangat kuat untuk mengubah tetapan parameter berdasarkan bar demi bar dengan meneruskan nilai sebagai array.
    • Sekiranya anda menggunakan tatasusunan, anda mesti menetapkan parameter Proses Susunan ke 1, jadi PrescienTrader tahu memprosesnya sebagai tatasusunan. Mengaktifkan fitur ini akan meningkatkan ukuran fail setiap permintaan API, yang memakan lebar jalur dan memperlahankan masa pemprosesan, jadi aktifkan hanya jika anda tahu apa yang anda lakukan dan mempunyai alasan yang baik untuk melakukannya.
      • 0 = Tidak aktif
      • 1 = Pada

Tanggapan

Susunan AFL

Setiap elemen dalam susunan ini mewakili bar, bermula dengan bar sifar.

  • PTStaticPL - yang statik Garis prescient. Ini mengandungi nilai plot Prescient Line yang dikira pada titik masa setiap bar dalam julat yang ditentukan. Ini adalah sangat berbeza dari analisis standard Prescient Line yang dikembalikan oleh Analisis PTBar, yang mengira Garis Prescient pada a bujang point-in-time, kemudian memproyeksikan plot ke belakang dan ke depan dalam masa.
  • PTStaticPLSlope - cerun statik Garis Prakiraan. Nilai positif bermaksud ia condong ke atas dan nilai negatif bermaksud ia merosot ke bawah.
  • PTStaticPLSlopeCum - yang kumulatif cerun Garisan Prakiraan statik. Inilah yang biasa anda gunakan plot Garis Prediksi statik.
  • PTStaticTrendBar - nombor bar relatif mengikut trend Garis Presien statik semasa. Nombor bar pertama dalam setiap tren adalah bar 0 dan semua nombor bar seterusnya adalah relatif dengan bar pertama tren.
  • PTStaticTrendBars - yang jumlah bar dalam trend Prescient Line statik semasa.
  • PTStaticTrendPct - yang peratusan selesai dari trend Line Prescient yang statik semasa. Peratusannya tidak akan pernah mencapai 100, kerana itu bermaksud tren baru telah dimulakan dengan penyelesaian nol persen. Jadi, 100% tren lama bersamaan dengan 0% tren baru.
  • PTStaticFLDScore - lihat keterangan di Analisis PTBar bahagian untuk penjelasan mengenai FLD Score.

Matriks AFL

Matriks ini mengembalikan senarai nilai yang berkaitan dengan frekuensi kitaran puncak setiap bar. Setiap matriks menunjukkan penunjuk yang berbeza, tetapi semuanya disusun mengikut frekuensi. Jadi, sebagai contoh, baris 3, lajur 999 sesuai dengan sama frekuensi kitaran puncak pada bar 1,000, di semua matriks. Matriks mengandungi bilangan baris yang diperlukan untuk menyenaraikan semua frekuensi kitaran puncak untuk semua bar.

  • PTStaticFrequencies - setiap baris dalam matriks ini sesuai dengan a frekuensi kitaran puncak.
  • PTStaticSlopes - setiap baris dalam matriks ini sesuai dengan cerun frekuensi yang terdapat di PTStaticFrequencies matriks, pada baris dan lajur yang sama.
  • PTStaticFLDPrices - setiap baris dalam matriks ini sesuai dengan harga FLD frekuensi yang terdapat dalam matriks PTStaticFrequencies, pada baris dan lajur yang sama.

PTBacktest

Ujian PTB ()

Fungsi ini digunakan untuk lari a utas tunggal analisis untuk penerokaan, ujian belakang atau pengoptimuman. Tidak memerlukan parameter kerana anda mengkonfigurasi semua parameter di Parameter tingkap. Apabila ia berjalan, ia memanggil Analisis PTRange dan menghasilkan susunan dan matriks AFL yang dijelaskan dalam fungsi PTRangeAnalysis.

Tidak seperti fungsi PrescienTrader, yang menyokong dua jangka masa yang lebih tinggi, yang PTBacktest fungsi menyokong tidak terhad jangka masa yang lebih tinggi.

Membaca Penerokaan, Ujian Balik dan OPTimisasi artikel, untuk penjelasan terperinci mengenai cara menggunakan fungsi ini.


PTBacktestMultiPrepare

PTBacktestMultiPrepare ()

Fungsi ini digunakan untuk sediakan a pelbagai utas analisis untuk penerokaan, ujian belakang atau pengoptimuman. Ini menggunakan parameter yang ditentukan dalam jendela Parameter untuk menghasilkan data dalam format yang tepat untuk permintaan API.

Membaca Penerokaan, Ujian Balik dan OPTimisasi artikel, untuk penjelasan terperinci mengenai cara menggunakan fungsi ini.


PTBacktestMultiExecute

PrescientAnalysisExecute ()

Fungsi ini digunakan untuk melaksanakan a pelbagai utas analisis untuk penerokaan, ujian belakang atau pengoptimuman. Ia menguraikan data, mengeluarkan hasilnya ke lajur penjelajahan dan menghasilkan susunan AFL yang berisi hasilnya.

Membaca Penerokaan, Ujian Balik dan OPTimisasi artikel, untuk penjelasan terperinci mengenai cara menggunakan fungsi ini.


PTLogToFile

PTLogToFile (Mesej)

Anda boleh menggunakan PTLogToFile untuk menulis mesej ke fail log yang ditentukan dalam tetingkap Parameter belakang.


PTWait

PTWait (Detik)

Anda boleh menggunakan PTWait untuk menangguhkan pelaksanaan selama beberapa saat. Biasanya, ini digunakan ketika membuat permintaan API. Sekiranya permintaan API gagal kerana sambungan Internet terputus, anda boleh menggunakan PTWait untuk menunggu beberapa saat sebelum mencuba semula.

Ukuran PTP

PTPositionSize (Mata Berisiko, Peratus Ekuiti Berisiko, Mata Wang Asas Akaun)

Fungsi ini mengautomasikan gaya Van Tharp, kedudukan kedudukan berasaskan volatiliti di AmiBroker. Kami fikir ini adalah pendekatan terbaik untuk kedudukan kedudukan, kerana ia secara automatik menguruskan risiko berdasarkan turun naik dan ekuiti portfolio.

Terbina dalam AmiBroker SetPositionSize fungsi termasuk pilihan untuk menetapkan saiz kedudukan sebagai peratus ekuiti, tetapi ia menganggap saiz kedudukan menjadi margin jumlah yang diperlukan untuk membuka kedudukan. Masalahnya ialah, margin hanya dikaitkan dengan risiko. Walaupun benar bahawa instrumen yang berisiko secara amnya mempunyai keperluan margin yang lebih tinggi, kami fikir ia adalah yang terbaik untuk mengira saiz kedudukan berdasarkan risiko sebenar setiap perdagangan, bukan dengan bergantung kepada broker anda untuk menguruskan risiko anda untuk anda. Oleh itu, kita perlu menggunakan wang tunai nilai kedudukan, bukan nilai margin. Sebagai contoh, jika anda membeli kontrak niaga hadapan dan harga jatuh sebanyak 2%, anda telah kehilangan 2% nilai tunai daripada kontrak itu, bukan 2% deposit margin anda!

Fungsi ini menetapkan saiz kedudukan AmiBroker menggunakan untuk melaksanakan perdagangan; ia tidak mengembalikan nilai. Ia bertujuan untuk menggantikan fungsi SetPositionSize terbina dalam.

  • The Mata Risiko hujah harus menjadi tatasusunan, menyatakan jumlah mata yang anda berisiko untuk membahayakan setiap perdagangan. Biasanya, ini akan menjadi jumlah mata yang sama yang anda gunakan untuk berhenti anda. Jika anda tidak menggunakan perhentian, anggaran bilangan maksimum mata sistem perdagangan anda biasanya hilang sebelum ia keluar dari atau membalikkan kedudukan. Kami mengesyorkan menggunakan formula yang menganggap pelbagai harga tipikal instrumen semasa. Sebagai contoh, ATR (20) * 2 akan menentukan risiko maksimum dua kali Julat Purata Benar. Sangat penting untuk menggunakan formula, bukan nilai statik, apabila menggunakan pelbagai instrumen (backtesting portfolio), jadi Poin Risked secara automatik menyesuaikan diri dengan julat harga dan turun naik setiap instrumen.
  • Peratusan Ekuiti Berisiko adalah peratusan ekuiti semasa anda yang anda sanggup berisiko untuk setiap perdagangan. Kami biasanya menggunakan 2%, tetapi anda boleh menggunakan nilai yang lebih tinggi atau lebih rendah, bergantung kepada toleransi risiko anda.
  • Mata Wang Pangkalan Akaun adalah rentetan yang mengandungi mata wang asas akaun dagangan anda. Sebagai contoh, "USD".

Fungsi ini menggunakan medan berikut dari tetingkap Maklumat AmiBroker:

  • Deposit Margin
  • Nilai Titik
  • Mata wang

Di samping itu, fungsi ini menyokong saiz kedudukan mata wang pelbagai, yang diperlukan apabila mata wang asas instrumen berbeza dari mata wang asas akaun anda. Paling umum, ini berlaku dengan pasangan mata wang dalam mata wang selain Dolar AS. Untuk melakukan ukuran kedudukan mata wang pelbagai, fungsi ini melihat harga pasangan Forex yang merupakan gabungan mata wang asas akaun anda dan mata wang asas pasangan Forex ditarik balik. Contohnya, jika anda memula CHFJPY, mata wang asas ialah JPY. Jika mata wang asas akaun anda adalah USD, fungsi ini akan melihat harga USDJPY, untuk mengira harga JPY dalam Dolar AS, yang kemudiannya membolehkan ia mengira saiz kedudukan untuk CHFJPY dalam Dolar AS. Oleh itu, data berikut diperlukan untuk saiz kedudukan mata wang untuk berfungsi:

  1. Anda mesti memasukkan yang betul Nilai Titik untuk setiap instrumen yang anda backtesting. Rujuk dokumentasi AmiBroker untuk penjelasan Nilai Mata.
  2. Anda mesti masukkan Deposit Margin untuk setiap instrumen yang anda backtesting. Anda boleh memasukkan deposit margin tetap sebagai nombor positif, atau sebagai peratusan nilai tunai kontrak, dengan memasukkan peratusan sebagai nombor negatif. Sebagai contoh, jika broker anda menawarkan 20: 1 leverage, deposit margin akan menjadi 5%. Jadi anda akan masuk -5 sebagai deposit margin.
  3. Untuk sebarang instrumen TIDAK dalam mata wang asas akaun anda, anda mesti memasukkan mata wang asas dalam Mata wang bidang. Menggunakan contoh CHFJPY, anda akan memasukkan JPY dalam bidang Matawang untuk instrumen tersebut.
  4. Anda mesti mempunyai petikan dalam pangkalan data AmiBroker anda untuk simbol ticker XXXOOO atau OOOXXX, di mana XXX mewakili anda akaun mata wang asas dan OOO mewakili alat mata wang asas. Sekiranya mata wang asas akaun anda muncul terlebih dahulu dalam simbol (XXXOOO), fungsi itu akan secara automatik membalikkan harga pasangan mata wang. Sekali lagi, dengan menggunakan contoh CHFJPY, jika mata wang asas akaun anda adalah USD, anda perlu memetik harga untuk USDJPY dalam pangkalan data anda. Simbol mesti diformat sama seperti XXXOOO atau OOOXXXX, TIDAK XXX-OOO atau beberapa variasi lain. Sekiranya penyedia data anda menggunakan format simbol ticker tidak standard, anda boleh memetakan format standard kepada format tidak standard dalam pangkalan data anda dengan membuat pembolehubah yang dinamakan mengikut format standard dan menetapkan format bukan standard sebagai nilai. Sekali lagi, dengan menggunakan contoh di atas, jika pangkalan data anda mengandungi simbol USD-JPY, anda boleh memetakan USDJPY ke USD-JPY menggunakan kod berikut:
USDJPY = "USD-JPY";

Sebagai alternatif, anda boleh menetapkan nilai penukaran tetap dengan menetapkan pembolehubah bersamaan dengan nilai berangka. Sebagai contoh:

USDJPY = 108.68;
  • Menetapkan nilai penukaran tetap menimpa sebarang nilai dalam pangkalan data anda. Ini amat berguna apabila anda tidak memetik dalam pangkalan data anda untuk mata wang penukaran.
  • Anda mesti membuat pembolehubah untuk semua peta simbol anda sebelum ini memanggil fungsi PrescientPositionSize.
  • Fungsi PrescientPositionSize mengabaikan tetapan penukaran mata wang terbina dalam AmiBroker. Oleh itu, apabila menggunakan fungsi ini, anda boleh mengabaikan tetapan dalam Keutamaan-> Mata Wang skrin. Kami sebenarnya mengesyorkan anda melumpuhkan fungsi penukaran mata wang dinamik AmiBroker dengan mengeluarkan simbol dari Simbol Kadar Dinamik lajur dalam skrin ini. Ini adalah kerana penukaran mata wang dinamik terbina dalam AmiBroker menimbulkan masalah apabila mata wang penukaran mempunyai sejarah petikan yang lebih pendek daripada instrumen yang dianalisis. Dalam keadaan ini, saiz kedudukan akan ditetapkan kepada sifar untuk sebarang tarikh di luar julat sejarah kutipan mata wang penukaran. Mengalih keluar simbol dari lajur Simbol Kadar Dinamik melumpuhkan penukaran mata wang dinamik, yang membetulkan masalah ini. Jika sejarah kutipan mata wang penukaran anda adalah lebih pendek daripada sejarah kutipan instrumen yang dianalisis, fungsi PresicentPositionSize akan menggunakan harga dari bar lepas mata wang penukaran, untuk mana-mana bar di luar julat sejarah kutipan mata wang penukaran.
Adakah artikel ini membantu?
Tidak suka 0
Views: 1392
BEBAS SELAMANYA
Isyarat Dagangan harian
oleh PrescientSignals
SUBSCRIBE
Langgan untuk menerima isyarat dagangan PERCUMA yang dihantar ke peti masuk e-mel anda setiap hari
Isyarat percuma ditunda oleh satu minggu. Ini membolehkan anda menilai perkhidmatan PrescientSignals kami tanpa risiko, dengan membandingkan ramalan minggu sebelumnya dengan keputusan sebenar.
BEBAS SELAMANYA
Isyarat Dagangan harian oleh PrescientSignals
SUBSCRIBE
Langgan untuk menerima isyarat dagangan PERCUMA yang dihantar ke peti masuk e-mel anda setiap hari
Isyarat percuma ditunda oleh satu minggu. Ini membolehkan anda menilai perkhidmatan PrescientSignals kami tanpa risiko, dengan membandingkan ramalan minggu sebelumnya dengan keputusan sebenar.