Pembalikan faktor berganda dan strategi gabungan trend volum harga yang lebih baik


Tarikh penciptaan: 2024-01-25 14:46:36 Akhirnya diubah suai: 2024-01-25 14:46:36
Salin: 1 Bilangan klik: 612
1
fokus pada
1617
Pengikut

Pembalikan faktor berganda dan strategi gabungan trend volum harga yang lebih baik

Gambaran keseluruhan

Strategi ini menggabungkan dua sub-strategi pembalikan dua faktor dan trend kuantiti harga yang disempurnakan untuk mendapatkan isyarat perdagangan komprehensif. Strategi pembalikan dua faktor ini berdasarkan kepada P183 dalam buku Ulf Jensen, menghasilkan isyarat apabila harga saham ditutup dalam dua hari dan keadaan penunjuk rawak dibuat.

Prinsip Strategi

Strategi pembalikan dua faktor menggunakan prinsip pembalikan harga penutupan dua hari dengan penilaian kosong indikator rawak. Jika harga penutupan pada hari sebelumnya lebih tinggi dan hari ini harga penutupan berbalik turun, dan indikator rawak cepat lebih rendah daripada indikator rawak perlahan dan indikator rawak cepat lebih tinggi daripada 50, isyarat kepala kosong dihasilkan. Jika penutupan pada hari sebelumnya lebih rendah dan hari ini harga penutupan berbalik naik, dan indikator rawak cepat lebih tinggi daripada indikator rawak perlahan dan indikator rawak cepat lebih rendah daripada 50, isyarat kepala banyak dihasilkan.

Strategi trend kuantiti harga yang diperbaiki berdasarkan penilaian bersama harga dan kuantiti transaksi. Rumus pengiraan adalah: PxVFactor = PriceFactor + Scale * CumPVT, di mana PriceFactor adalah faktor harga, CumPVT adalah penunjuk tenaga terkumpul.

Strategi gabungan mempertimbangkan secara komprehensif isyarat kedua-dua substrategi, apabila pembalikan dua faktor dan trend kuantiti harga yang disempurnakan sama dengan over atau under, maka ia menghasilkan isyarat over kosong yang sesuai.

Analisis kelebihan

  • Strategi pembalikan dua faktor menggabungkan pembalikan harga dengan penilaian penunjuk rawak untuk mengenal pasti ekstremum jangka pendek dan menangkap peluang pembalikan.
  • Strategi penambahbaikan trend kuantiti harga dengan penambahan faktor kuantiti urus niaga, dapat menentukan masa pemulihan pasaran.
  • Kedua-dua strategi saling mengesahkan, meningkatkan kestabilan dan mengelakkan isyarat yang salah.
  • Menggunakan parameter jangka pendek sederhana seperti 9 hari atau 14 hari, sesuai untuk operasi dalam sehari dan garis pendek.

Risiko dan pengoptimuman

  • Strategi pembalikan wujud risiko yang terancam dan perlu menetapkan stop loss untuk mengawal risiko tersebut.
  • Strategi harga kuantitatif ada kemungkinan untuk meningkatkan penarikan balik, dan kerugian akan meningkat jika anda menilai arah pasaran yang salah.
  • Untuk menguji sama ada dua faktor PriceFactor dan CumPVT mempunyai berat optimum, lebih banyak pengoptimuman boleh dilakukan.
  • Anda boleh menguji nisbah pulangan keuntungan di bawah parameter hari yang berbeza, memilih parameter yang paling sesuai.

ringkaskan

Secara keseluruhannya, strategi gabungan trend kuantiti harga pengubahsuaian dan pengubahsuaian dua faktor, digabungkan dengan pengubahsuaian dan pengubahsuaian dua dimensi, kedua-duanya dapat saling mengesahkan isyarat dan meningkatkan kestabilan. Menambah indikator trend sebagai penilaian tambahan dalam strategi pengubahsuaian yang mudah ditiru adalah perlu.

Kod sumber strategi
/*backtest
start: 2024-01-17 00:00:00
end: 2024-01-24 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 23/02/2021
// 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 related article is copyrighted material from
//  Stocks & Commodities.
//
// 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


MPVT(Level,Scale,Length) =>
    pos = 0.0
    xCumPVT = 0.0
    xOHLC4 = ohlc4
    xV = volume
    rV = xV / 50000
    xCumPVT := nz(xCumPVT[1]) + (rV * (xOHLC4 - xOHLC4[1]) / xOHLC4[1])
    nRes = Level + Scale * xCumPVT
    xMARes = sma(nRes, Length)
    pos:= iff(nRes > xMARes, 1,
           iff(nRes < xMARes, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Modified Price-Volume Trend", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Price-Volume Trend ----")
LevelPVT = input(1)
Scale = input(1)
LengthPVT = input(23)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posMPVT = MPVT(LevelPVT,Scale,LengthPVT)
pos = iff(posReversal123 == 1 and posMPVT == 1 , 1,
	   iff(posReversal123 == -1 and posMPVT == -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 )