Strategi Timbang Tara Bergerak Berganda


Tarikh penciptaan: 2023-11-24 14:21:06 Akhirnya diubah suai: 2023-11-24 14:21:06
Salin: 0 Bilangan klik: 771
1
fokus pada
1621
Pengikut

Strategi Timbang Tara Bergerak Berganda

Gambaran keseluruhan

Strategi ini adalah strategi yang menggunakan bentuk dua garis sejajar untuk melakukan operasi lelang. Ia menggabungkan dua substrategi 123 bentuk pembalikan dan elemen kuantiti perdagangan terhad ((FVE), untuk melakukan operasi lelang apabila kedua-duanya menghantar isyarat beli atau menjual pada masa yang sama.

Prinsip Strategi

123 pembalikan bentuk

Strategi ini berasal dari Ulf Jensen’s How to Triple Profits in the Futures Market. Ia memberi isyarat dengan syarat:

  • Apabila harga penutupan meningkat selama 2 hari berturut-turut, dan indikator Stoch perlahan-lahan berada di bawah 50 selama 9 hari, buat lebih banyak;
  • Apabila harga penutupan turun 2 hari berturut-turut, dan Indeks Stoch Rapid 9 hari lebih tinggi daripada 50, kosongkan.

Unsur berjumlah terhad ((FVE)

FVE adalah purely a volume indicator. Ia menentukan sama ada wang masuk atau keluar berdasarkan kenaikan harga dan saiz jumlah transaksi.

Isyarat dikeluarkan apabila kedua-dua bar FVE naik atau turun pada masa yang sama.

Analisis kelebihan

Strategi ini menggabungkan dua indikator untuk menentukan trend pasaran dan aliran dana, yang dapat menghalang isyarat yang salah. Kedua-dua substrategi mempunyai ciri-ciri pembalikan tertentu, sehingga boleh melakukan operasi lelang untuk mendapatkan keuntungan.

Di samping itu, apabila bentuk dua garis sejajar muncul, ia mewakili trend jangka pendek dan pertengahan yang sama, dan oleh itu mempunyai kestabilan yang lebih kuat.

Analisis risiko

Strategi ini bergantung kepada bentuk garis rata, apabila pasaran bergolak, isyarat yang salah boleh menyebabkan kerugian. Selain itu, kegagalan pembalikan adalah risiko yang biasa.

Anda boleh membuat strategi lebih kukuh dengan menyesuaikan parameter yang sesuai, atau anda boleh menetapkan stop loss untuk mengawal risiko.

Arah pengoptimuman

Lebih banyak jenis penunjuk rata-rata boleh diuji untuk mencari kecocokan terbaik. Penunjuk penilaian tambahan seperti penunjuk kekuatan dan kelemahan, penunjuk kadar turun naik dan lain-lain boleh diperkenalkan untuk mengelakkan isyarat yang salah.

Di samping itu, ia boleh mengkaji bagaimana untuk menyesuaikan parameter mengikut keadaan pasaran yang dinamik untuk menjadikan strategi lebih mudah disesuaikan. Ia juga boleh meneroka pembelajaran mesin dan algoritma rangkaian saraf untuk mencapai parameter yang dapat disesuaikan.

ringkaskan

Strategi pengalihan dua garis lurus ini menggabungkan dua indikator pemikiran terbalik untuk menilai dan mengelakkan risiko. Tetapi, kerana bergantung pada bentuk garis lurus, lebih banyak pengoptimuman diperlukan untuk menjadikan strategi ini lebih stabil. Secara keseluruhan, strategi ini menyediakan kerangka asas untuk perdagangan pengalihan garis pendek dan patut diteliti lebih lanjut.

Kod sumber strategi
/*backtest
start: 2023-10-24 00:00:00
end: 2023-11-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/08/2020
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The FVE is a pure volume indicator. Unlike most of the other indicators 
// (except OBV), price change doesn?t come into the equation for the FVE (price 
// is not multiplied by volume), but is only used to determine whether money is 
// flowing in or out of the stock. This is contrary to the current trend in the 
// design of modern money flow indicators. The author decided against a price-volume 
// indicator for the following reasons:
// - A pure volume indicator has more power to contradict.
// - The number of buyers or sellers (which is assessed by volume) will be the same, 
//     regardless of the price fluctuation.
// - Price-volume indicators tend to spike excessively at breakouts or breakdowns.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos


FVE(Period,Factor) =>
    pos = 0
    nRes = 0.0
    xhl2 = hl2
    xhlc3 = hlc3
    xClose = close
    xVolume = volume
    xSMAV = sma(xVolume, Period)
    nMF = xClose - xhl2 + xhlc3 - xhlc3[1]
    nVlm = iff(nMF > Factor * xClose / 100,  xVolume, 
             iff(nMF < -Factor * xClose / 100, -xVolume, 0))
    nRes := nz(nRes[1],0) + ((nVlm / xSMAV) / Period) * 100
    pos := iff(nRes > nRes[1] and nRes > nRes[2], 1,
             iff(nRes < nRes[1] and nRes < nRes[2], -1, nz(pos[1], 0)))   
    pos

strategy(title="Combo Backtest 123 Reversal & Finite Volume Elements (FVE)", shorttitle="Combo", overlay = true)
Length = input(15, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Period = input(18, minval=1)
Factor = input(0.6, minval=0.1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posFVE = FVE(Period,Factor)
pos = iff(posReversal123 == 1 and posFVE == 1 , 1,
	   iff(posReversal123 == -1 and posFVE == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )