My bahasa beberapa penanda yang biasa ditulis dan analisis kes model lintas penanda

Penulis:Kebaikan, Dicipta: 2019-07-08 10:01:48, Dikemas kini: 2019-07-16 15:38:53

My language adalah bahasa pengaturcaraan kuantitatif yang sangat bersepadu dan berfungsi dengan baik, yang direka untuk pemula kuantitatif. Walaupun ia popular di kalangan pemula, ia agak lemah dalam fungsi daripada bahasa pengaturcaraan lain. Dalam hal penyesuaian mendalam beberapa strategi yang rumit, kerana perpustakaan fungsi yang sudah disesuaikan sangat kuat, ditambah dengan platform pengaturcaraan kuantitatif sendiri untuk antarmuka API untuk pelbagai pertukaran utama, anda tidak hanya menjimatkan banyak masa dalam menulis kod, tetapi juga memberi tumpuan kepada reka bentuk logik strategi utama, dan kos yang sangat rendah (harga di bawah RMB 3 sehari), yang membuat anda tidak perlu risau.

Bahasa My tidak hanya digunakan untuk masa hadapan komoditi domestik, tetapi juga menyokong transaksi yang berkaitan dengan mata wang digital tanpa perbezaan fungsi.

Artikel ini akan membincangkan penulisan beberapa indikator yang biasa digunakan dan analisis kes beberapa model lintas indikator.

Pengelompokan dan penulisan beberapa indikator yang biasa digunakan

  • Bentuk K-line klasik tradisional termasuk: kelinci tiga kaki, bintang salib, kepala patah kaki, tiang angin, jalan kaki Sendai, penggalian jarum emas dan lain-lain.

  • Dari segi indikator, indikator trend dikelaskan kepada: MA (kombinasi garis rata), BOLL, PUBU (garis terjun), SAR (titik henti), dan lain-lain.

  • Indikator kelas goyangan: ATR (Lengkap gelombang sebenar), KDJ (Indikator rawak), MACD, WR (Indikator William) dan lain-lain

  • Indikator analisis kuantiti CJL (volume)、DUALVOL (volume ratio)、OBV (volume flows)

Seterusnya, marilah kita menggunakan bahasa My untuk melaksanakan bentuk dan penunjuk klasik di atas secara individu di platform kuantiti pencipta, bukan untuk membolehkan pembaca menggunakan penunjuk ini secara langsung (yang tentu saja, dalam keadaan tertentu, penggunaan langsung mungkin juga tidak ada masalah), tetapi untuk membolehkan pembaca menilai keadaan masa berdasarkan penunjuk ini dan memperbaiki klasik ini mengikut keadaan pasaran dan pengurusan wang mereka sendiri.

Garis matahari besar: harga buka adalah harga terendah, harga tutup adalah harga tertinggi, kenaikan garis K lebih daripada 4%

AA:=OPEN=LOW; 
BB:=CLOSE=HIGH; 
CC :=CLOSE/OPEN>1.04; 

Syarat logik keseluruhan di sini ialah: AA&&BB&&CC

Penembusan kepala: dua garis K terdiri, yang menunjukkan bahawa pasaran akan bertukar, dan garis K semasa mempunyai perbezaan pendapatan yang sekurang-kurangnya 4%. Jika jenis penembusan kepala ke atas, maka garis K harus matahari terbit, sementara harga tertinggi dan terendah pada garis K semasa harus meliputi satu garis K sebelumnya.

A1:=REF(CLOSE,1); 
A2:=REF(OPEN,1); 
BB:C/O>1.04;
B1:=OPEN<A1; 
B2:=CLOSE>A2;

Syarat pertimbangan logik di sini ialah: BB&&B1&B2

Indikator kategori trend

  • Perpindahan rata-rata: 5 hari rata-rata ke atas melalui 10 hari rata-rata ((gold fork); 5 hari rata-rata ke bawah melalui 10 hari rata-rata ((dead fork)
MA5:=MA(CLOSE,5); 
MA10:=MA(CLOSE,10);
金叉 CROSSUP(MA5,MA10);
死叉 CROSSDOWN(MA5,MA10);

Di sini anda dapat melihat bahawa fungsi bahasa My sangat bersepadu, satu fungsi yang menilai persimpangan linear, pengguna hanya perlu memanggilnya, tidak perlu membina setiap fungsi dari awal lagi dari logika asas, dan lebih mudah untuk mengubahsuai masa depan.

Begitu juga, bagi logik strategi tiga garisan rata, andaikan garisan rata 5 hari, garisan rata 10 hari, garisan rata 30 hari beratur dan berlangsung selama 3 hari, kita boleh menulis seperti ini:

MA5:=MA(CLOSE,5); 
MA10:=MA(CLOSE,10); 
MA30:=MA(CLOSE,30); 
CC:=MA5>MA30 AND MA10>MA30;
  • Saluran BOLL: BOLL terdiri daripada tiga saluran: Bottom, Top, Middle, Middle. Apabila saluran menjadi lebar dan naik, harga berada di atas saluran, trend multi-head muncul. Sebaliknya, trend kosong muncul.

Dengan menggunakan kod bahasa My, ia boleh ditulis seperti ini:

MID:MA(CLOSE,26);//求N个周期的收盘价均线,称为布林通道中轨
TMP2:=STD(CLOSE,26);//求M个周期内的收盘价的标准差
TOP:MID+2*TMP2;//布林通道上轨
BOTTOM:MID-2*TMP2;//布林通道下轨
AA:=TOP>REF(TOP,1)&&BOTTOM<REF(BOTTOM,1)&&MID>REF(MID,1);
BB:=C>TOP;

Antara trend utama ini adalah: AA & BB

  • Tanda SAR: SAR ke atas melalui 0, multi-head trend; SAR ke bawah melalui 0, trend kosong.

Pertama, kita menentukan parameter berikut dalam Perpustakaan Perdagangan Bahasa Melayu di bawah antarmuka penulisan kod strategi pencipta kuantiti dan halaman ulangan:

img img

N 1 100 4 Langkah 1 20 2 Nilai 1 10 2

STEP1:=STEP/100;
MVALUE1:=MVALUE/10;
SARLINE:SAR(N,STEP1,MVALUE1),CIRCLEDOT;
//N个周期的抛物转向,步长为STEP1,极限值为MVALUE1.
CROSS(SARLINE,0),BPK;//抛物转向值上穿0,做多。
CROSS(0,SARLINE),SPK;//抛物转向值下穿0,作空。
AUTOFILTER;

Indikator kelas berayun

Orang yang mempunyai pengalaman berdagang tahu bahawa tidak kira di mana pasaran, harga sebenarnya berada dalam keadaan goyah 80 peratus masa, dan harga berjalan dengan cara trend hanya 20 peratus masa.

Oleh itu, penunjuk pendorong lebih penting daripada penunjuk trend dan juga mempunyai kesan yang lebih besar terhadap hasil dagangan, dan dalam kebanyakan pasaran yang goyah, penunjuk trend hampir tidak berfungsi. Sementara penunjuk pendorong boleh berubah mengikut pergerakan harga, penunjuk pendorong juga boleh dipanggil penunjuk rawak.

Ciri-ciri penunjuk kelas berayun: Perubahan nilai penunjuk berayun mempunyai nilai tengah yang boleh dibahagikan kepada bahagian atas dan bahagian bawah kawasan horizontal, yang umumnya bertindak balas terhadap perubahan harga.

Untuk menilai trend yang akan datang dengan indikator trend, menentukan trend yang akan datang dengan indikator swing adalah pilihan yang baik.

  • Indikator rawak KDJ terdiri daripada tiga garis K, D, J, garis indikator berubah antara 0 hingga 100, J kurang daripada 20, memasuki kawasan jual-beli, J lebih daripada 80, memasuki kawasan beli-beli.
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
//收盘价与N周期最低值做差,N周期最高值与N周期最低值做差,两差之间做比值。
K:SMA(RSV,M1,1);//RSV的移动平均值
D:SMA(K,M2,1);//K的移动平均值
J:3*K-2*D;
BACKGROUNDSTYLE(1);
CROSS(K,D),BPK;//KD金叉,做多。
CROSS(J,20),BP;//J值上穿20
CROSS(D,K),SPK;//KD死叉,做空。
CROSS(80,J),SP;// J值下穿80
AUTOFILTER;
  • MACD adalah garis purata yang berbeza rata-rata, yang berkembang dari garis purata bergerak indeks dua, yang terdiri daripada rata-rata bergerak indeks pantas (EMA) dikurangkan daripada rata-rata bergerak indeks perlahan. Makna MACD adalah sama dengan garis purata bergerak ganda, apabila MACD beralih dari negatif ke positif, ia adalah isyarat tambahan. Apabila MACD beralih dari positif ke negatif, ia adalah isyarat kosong.
DIFF:EMA(CLOSE,12) - EMA(CLOSE,26);
//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA:EMA(DIFF,9);//DIFF的M个周期指数平滑移动平均
2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线
CROSS(DIFF,DEA),BPK;//DIFF上穿DEA,做多。
CROSS(DEA,DIFF),SPK;//DIFF下穿DEA,做空。
AUTOFILTER;

Contoh model pelbagai penunjuk

Kenapa kita perlu melintasi paras?

  • Sebab pertama: penunjuk melintasi model, adalah satu pemikiran perdagangan yang mempunyai unsur-unsur dalaman yang berbunyi secara teknikal, yang menggabungkan beberapa idea perdagangan penunjuk yang berbeza untuk melihat pergerakan.

  • Sebab kedua: penunjuk trend gagal dalam pasaran keseluruhan, dan penggunaan penunjuk swing secara berasingan tidak dapat menentukan keadaan pasaran semasa, memerlukan analisis gabungan beberapa penunjuk.

Menggunakan fikiran

  • Pengertian trend dikombinasikan dengan analisis yang teliti.
  • Pertimbangan berbilang syarat sama arah.

Contoh model gegaran

  • Indeks Tide
ABS(CLOSE-REF(CLOSE,29))/(HHV(HIGH,30)-LLV(LOW,30))*100

Mengukur turun naik harga dalam satu kitaran tertentu: turun naik indeks secara berturut-turut dalam satu julat kecil menunjukkan bahawa anda berada dalam pasaran yang menyeluruh, jika tidak, ia adalah pasaran trend.

Idea perdagangan model goyah: penilaian indeks pasang surut, penunjuk goyah KDJ mencari titik masuk dan titik keluar

Model ini boleh ditulis seperti ini:

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,M1,1);//RSV的移动平均值
D:SMA(K,M2,1);//K的移动平均值
J:3*K-2*D;
CMIVAL:ABS(CLOSE-REF(CLOSE,29))/(HHV(HIGH,30)-LLV(LOW,30))*100,NODRAW;
BACKGROUNDSTYLE(1);
K>D&&EVERY(CMIVAL<20,2),BPK;//盘整行情,KD金叉,做多。
CROSS(J,10)||CROSS(K,D),BP;// J值上穿10超卖或者KD金叉,平仓
D>K&&EVERY(CMIVAL<20,2),SPK;//盘整行情,KD死叉,做空。
CROSS(90,J)||CROSS(D,K),SP;// J值下穿90超买或者KD死叉,平仓
AUTOFILTER;

img

Contoh model trend

Pemikiran perdagangan model trend: EMA menilai trend menaik atau menurun; Indeks ADX mencerminkan tahap perubahan trend, aliran masuk yang kuat, aliran pandangan yang lemah.

EMA menilai sistem perdagangan trend:

UPPERMA:EMA(HIGH,30);//计算30根K线最高价的EMA
LOWERMA:EMA(LOW,30);//计算30根K线最低价的EMA
CROSSUP(C,UPPERMA),BPK;//收盘价上穿EMA,做多
CROSSDOWN(C,LOWERMA),SPK;//收盘价下穿EMA,做空
AUTOFILTER;

img

EMA hanya boleh menilai banyak trend dan trend kosong, tetapi tidak dapat menentukan kekuatan dan kelemahan trend, jadi EMA gagal dalam penyusunan pasaran, jadi kita perlu mencari penunjuk yang dapat mencerminkan kekuatan dan kelemahan trend: Indeks ADX

Kodnya ialah:

TR:=SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14);
HD:=HIGH-REF(HIGH,1);//最高价与前一周期最高价做差
LD:=REF(LOW,1)-LOW;//前一周期最低价与最低价做差
DMP:=SUM(IFELSE(HD>0 && HD>LD,HD,0),14);
//如果HD>0并且HD>LD,取HD否则取0,对取值做N周期累加求和。
DMM:=SUM(IFELSE(LD>0 && LD>HD,LD,0),14);
//如果LD>0并且LD>HD,取LD否则取0,对取值做N周期累加求和。
PDI:=DMP*100/TR;
MDI:=DMM*100/TR;
ADX:=MA(ABS(MDI-PDI)/(MDI+PDI)*100,6);

ADX menunjukkan trend ke atas yang kuat, ADX menunjukkan trend ke bawah yang lemah.

img

Kemudian kami menggabungkan kedua-duanya untuk membentuk sistem dagangan berasaskan ADX dan EMA.

Kodnya ialah:

TR:=SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14);
HD:=HIGH-REF(HIGH,1);
LD:=REF(LOW,1)-LOW;
DMP:=SUM(IFELSE(HD>0 && HD>LD,HD,0),14);
DMM:=SUM(IFELSE(LD>0 && LD>HD,LD,0),14);
PDI:=DMP*100/TR;
MDI:=DMM*100/TR;
ADX:=MA(ABS(MDI-PDI)/(MDI+PDI)*100,6);
UPPERMA:=EMA(HIGH,30);
LOWERMA:=EMA(LOW,30);
CROSSUP(C,UPPERMA)&&EVERY(ADX>REF(ADX,1),2),BPK;
//当ADX连续两周期向上且当前价大于30根K线最高价的EMA满足买入条件
CROSSDOWN(C,LOWERMA)&&EVERY(ADX>REF(ADX,1),2),SPK;
//当ADX连续两周期向上且当前价下于30根K线最低价的EMA满足卖出条件
AUTOFILTER;

Penghakiman pelbagai penunjuk yang sama Analisis yang tepat untuk meningkatkan peluang kemenangan

Cari beberapa penunjuk trend: Saluran Boll, Saluran Dongjian, dan Sistem Penembusan Dinamika Sempurna adalah sistem penembusan berdasarkan Saluran Boll adaptif dan Saluran Dongjian adaptif.

Corridor Donchian: Dicipta oleh ahli fizik pasaran hadapan Amerika Syarikat, Richard Dennis, dan merupakan pendahulu undang-undang tsunami. Ia terdiri daripada harga tertinggi dan harga minimum dalam satu kitaran tertentu (biasanya 20, dalam kes yang ditetapkan sebagai boleh berubah) yang membentuk tren naik dan turun, apabila harga melangkau orbit naik dan turun, tren pecah adalah isyarat membeli mungkin; sebaliknya, tren pecah adalah isyarat jual mungkin.

Perdagangan model berbilang penanda:

  • Harga semalam lebih tinggi daripada laluan Brin, dan harga kitaran hari itu lebih tinggi daripada laluan Dongguan, dengan banyak pesanan.

  • Harga semalam lebih rendah daripada laluan Brin, dan harga kitaran hari ini lebih rendah daripada laluan Dongguan, buka senarai kosong

  • Apabila memegang banyak pesanan, harga adalah lebih rendah daripada garis purata keluar yang disesuaikan, banyak pesanan

  • Apabila memegang pesanan kosong, harga lebih besar daripada garis purata keluar yang disesuaikan, pesanan kosong rata

Kita boleh menulisnya seperti ini:

//当日市场波动
TODAYVOLATILITY:=STD(CLOSE,30);
//昨日市场波动
YESTERDAYVOLATILITY:=REF(TODAYVOLATILITY,1);
//市场波动的变动率
DELTAVOLATILITY:(TODAYVOLATILITY-YESTERDAYVOLATILITY)/TODAYVOLATILITY;
//计算自适应参数
LOOKBACKDAYS1:=LOOP2(BARPOS=30,20,REF(LOOKBACKDAYS1,1)*(1+DELTAVOLATILITY));
LOOKBACKDAYS2:=ROUND(LOOKBACKDAYS1,0);
LOOKBACKDAYS3:=MIN(LOOKBACKDAYS2,60);//60自适应参数的上限
LOOKBACKDAYS:=MAX(LOOKBACKDAYS3,20);//20自适应参数的下限
//自适应布林通道中轨
MIDLINE:=MA(CLOSE,LOOKBACKDAYS);
BAND:=STD(CLOSE,LOOKBACKDAYS); 
//自适应布林通道上轨
UPBAND:=MIDLINE+2*BAND;
//自适应布林通道下轨
DNBAND:=MIDLINE-2*BAND; 
//自适应唐奇安通道上轨
BUYPOINT:=HHV(HIGH,LOOKBACKDAYS);
//自适应唐奇安通道下轨
SELLPOINT:=LLV(LOW,LOOKBACKDAYS);
//自适应出场均线
LIQPOINT:=MIDLINE;
//昨日价格大于布林通道上轨,并且当日价格大于唐奇安通道上轨,开多单
REF(C,1)>REF(UPBAND,1)&&HIGH>=REF(BUYPOINT,1),BK;
//持有多单时,昨日价格小于布林通道下轨,并且当日价格小于唐奇安通道下轨,平多单
REF(C,1)<REF(DNBAND,1)&&LOW<=REF(SELLPOINT,1),SP;
//持有多单时,价格小于自适应出场均线,平多单
BARSBK>=1&&LOW<=REF(LIQPOINT,1),SP;
//持有空单时,昨日价格大于布林通道上轨,并且当日价格大于唐奇安通道上轨,平空单
REF(C,1)>REF(UPBAND,1)&&H>=REF(BUYPOINT,1),BP;
//昨日价格小于布林通道下轨,并且当日价格小于唐奇安通道下轨,开空单
REF(CLOSE,1)<REF(DNBAND,1)&&LOW<=REF(SELLPOINT,1),SK;
//持有空单时,价格大于自适应出场均线,平空单
BARSSK>=1&&HIGH>=REF(LIQPOINT,1),BP;
AUTOFILTER;

Dalam proses penulisan, perlu diperhatikan bahawa dalam bahasa My, penyesuaian penyesuaian CROSSUP, penyesuaian penyesuaian CROSSDOWN dengan penyesuaian > penyesuaian, penyesuaian < penyesuaian; dan juga penggunaan penyesuaian yang fleksibel untuk penyesuaian AND & & penyesuaian, penyesuaian atau penyesuaian OR; penghubung pelbagai syarat memberi perhatian kepada masalah keutamaan; dan penyesuaian penyesuaian: penyesuaian dengan penyesuaian: = penyesuaian; dan terakhir adalah perubahan kepada pembolehubah dan parameter yang sama.

Di atas adalah beberapa penunjuk teknikal yang biasa dan penggunaan gabungan mereka, yang dapat dilihat, bahasa My adalah bahasa skrip yang sangat kuat, selain pengalaman pembelajaran pemula yang mesra, walaupun ahli kuantiti yang mahir, juga dapat menggunakan kombinasi penunjuk dan tatabahasa ini dengan fleksibel untuk membuat strategi perdagangan yang kuat, dengan sokongan yang sangat baik oleh antara muka API platform kuantiti pencipta, pemaju kuantiti akhirnya dapat benar-benar meletakkan tenaga mereka pada penyelidikan dan penyusunan strategi, dan tidak menggunakan struktur dasar sistem perdagangan yang tidak berkaitan dengan perdagangan kuantitatif, terutamanya pada tahun-tahun ini.


Lebih lanjut

Gyp9Mak.

wwq4817Baguslah.