Bahagian Emas Bermakna Strategi Dagangan Trend Pembalikan


Tarikh penciptaan: 2023-12-07 11:03:20 Akhirnya diubah suai: 2023-12-07 11:03:20
Salin: 1 Bilangan klik: 639
1
fokus pada
1621
Pengikut

Bahagian Emas Bermakna Strategi Dagangan Trend Pembalikan

Gambaran keseluruhan

Strategi perdagangan trend kembali pada purata perpecahan emas menggunakan indikator saluran dan purata bergerak untuk mengenal pasti arah trend yang lebih kuat, dan kedudukan boleh dibuka di arah trend setelah harga mengalami penurunan tertentu. Strategi ini sesuai untuk pasaran yang mempunyai ciri-ciri trend yang kuat dan dapat memperoleh prestasi yang lebih baik dalam keadaan trend.

Prinsip Strategi

Strategi ini merangkumi metrik utama seperti metrik saluran, purata bergerak, dan garis pemicu regresi.

  1. Indeks saluran terdiri daripada harga tertinggi dan harga terendah yang dikira untuk mengenal pasti saluran harga;
  2. Purata bergerak digunakan untuk menentukan arah trend harga secara keseluruhan;
  3. Garis pencetus regresi digunakan untuk membuka kedudukan selepas harga berpatah balik dari sempadan saluran dalam peratusan tertentu.

Apabila harga menyentuh bahagian bawah saluran, strategi akan merekodkan titik terendah sebagai titik rujukan dan menetapkan tanda yang membenarkan untuk melakukan penarikan. Apabila harga naik, apabila kenaikan mencapai peratusan pemulihan, ia akan membuka kedudukan kosong di dekat titik rebound.

Sebaliknya, apabila harga menyentuh puncak saluran, strategi akan mencatat titik tertinggi sebagai titik rujukan dan menetapkan tanda yang membenarkan untuk melakukan lebih banyak. Apabila harga turun, jika kadar penurunan mencapai keperluan peratusan penyesuaian, maka membuka lebih banyak kedudukan di sekitar titik tersebut.

Oleh itu, logik perdagangan strategi ini adalah untuk mengesan saluran harga dan memilih titik yang sesuai untuk campur tangan dalam trend yang ada apabila isyarat pembalikan muncul. Ini adalah kaedah biasa dalam strategi perdagangan penyesuaian trend.

Analisis kelebihan

Strategi ini mempunyai beberapa kelebihan utama:

  1. Ia boleh menjadi lebih baik dalam keadaan trend yang lebih kuat.
  2. Keamatan strategi boleh disesuaikan dengan parameter perbandingan regresi;
  3. Kawalan penarikan balik yang munasabah boleh mengehadkan kerugian tunggal.

Khususnya, kerana strategi ini membuka kedudukan pada titik perubahan trend, ia lebih berkesan di pasaran yang mempunyai turun naik harga yang besar dan jelas. Selain itu, menyesuaikan parameter nisbah penyesuaian dapat mengawal tahap radikal strategi untuk mengikuti trend. Akhirnya, dengan menghentikan kerugian, anda dapat mengawal kerugian tunggal dengan baik.

Analisis risiko

Strategi ini juga mempunyai risiko utama:

  1. Strategi yang lebih sensitif terhadap ciri-ciri trend dalam jenis dagangan;
  2. Penetapan yang tidak betul dalam nisbah penyesuaian boleh menyebabkan terlalu radikal atau konservatif;
  3. Ia mungkin terlalu lama dan perlu berhati-hati dengan risiko bermalam.

Khususnya, jika jenis perdagangan yang digunakan oleh strategi adalah trend yang lemah dan turun naik, maka kesannya mungkin akan dikurangkan. Selain itu, penyetempatan rasio penyesuaian yang terlalu besar atau terlalu kecil akan mempengaruhi prestasi strategi. Akhir sekali, kerana jangka masa memegang strategi mungkin lebih lama, perhatian juga perlu diberikan untuk mengawal risiko semalaman.

Untuk mengelakkan risiko yang disebutkan di atas, pertimbangan untuk mengoptimumkan adalah:

  1. Memilih jenis dagangan yang lebih jelas dengan ciri-ciri trend;
  2. Parameter untuk mencari kombinasi parameter terbaik;
  3. Tetapkan penangguhan Exit untuk mengawal masa pegangan.

ringkaskan

Strategi perdagangan trend pulangan nilai rata-rata dengan cara membahagikan emas adalah sistem trend yang lebih tipikal. Strategi ini mempunyai ruang penyesuaian parameter yang lebih besar dan dapat disesuaikan dengan lebih banyak keadaan pasaran dengan pengoptimuman, dan kawalan risiko juga lebih munasabah. Oleh itu, ia adalah strategi strategi yang sesuai untuk diuji dan diperbaiki.

Kod sumber strategi
/*backtest
start: 2022-11-30 00:00:00
end: 2023-12-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//
// A port of the TradeStation EasyLanguage code for a mean-revision strategy described at
//     http://traders.com/Documentation/FEEDbk_docs/2017/01/TradersTips.html
//
// "In “Mean-Reversion Swing Trading,” which appeared in the December 2016 issue of STOCKS & COMMODITIES, author Ken Calhoun
//  describes a trading methodology where the trader attempts to enter an existing trend after there has been a pullback. 
//  He suggests looking for 50% pullbacks in strong trends and waiting for price to move back in the direction of the trend
//  before entering the trade."
//
//  See Also:
//    - 9 Mistakes Quants Make that Cause Backtests to Lie (https://blog.quantopian.com/9-mistakes-quants-make-that-cause-backtests-to-lie-by-tucker-balch-ph-d/)
//    - When Backtests Meet Reality (http://financial-hacker.com/Backtest.pdf)
//    - Why MT4 backtesting does not work (http://www.stevehopwoodforex.com/phpBB3/viewtopic.php?f=28&t=4020)
//
// 
// -----------------------------------------------------------------------------
// Copyright 2018 sherwind
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// 
// The GNU General Public License can be found here
// <http://www.gnu.org/licenses/>.
//
// -----------------------------------------------------------------------------
//

strategy("Mean-Reversion Swing Trading Strategy v1", shorttitle="MRST Strategy v1", overlay=true)
channel_len  = input(defval=20, title="Channel Period", minval=1)
pullback_pct = input(defval=0.5, title="Percent Pull Back Trigger", minval=0.01, maxval=1, step=0.01)
trend_filter_len = input(defval=50, title="Trend MA Period", minval=1)


upper_band = highest(high, channel_len)
lower_band = lowest(low, channel_len)
trend      = sma(close, trend_filter_len)

low_ref  = 0.0
low_ref  :=  nz(low_ref[1])
high_ref = 0.0
high_ref := nz(high_ref[1])
long_ok  = false
long_ok  := nz(long_ok[1])
short_ok = false
short_ok := nz(short_ok[1])
long_ok2 = false
long_ok2  := nz(long_ok2[1])

if (low == lower_band)
    low_ref  := low
    long_ok  := false
    short_ok := true
    long_ok2 := false

if (high == upper_band)
    high_ref := high
    long_ok  := true
    short_ok := false
    long_ok2  := true

// Pull Back Level
trigger = long_ok2 ? high_ref - pullback_pct * (high_ref - low_ref) : low_ref + pullback_pct * (high_ref - low_ref)

plot(upper_band, title="Upper Band", color=long_ok2?green:red)
plot(lower_band, title="Lower Band", color=long_ok2?green:red)
plot(trigger, title="Trigger", color=purple)
plot(trend, title="Trend", color=orange)

enter_long = long_ok[1] and long_ok and crossover(close, trigger) and close > trend and strategy.position_size <= 0
enter_short = short_ok[1] and short_ok and crossunder(close, trigger) and close < trend and strategy.position_size >= 0

if (enter_long)
    long_ok := false
    strategy.entry("pullback-long", strategy.long, stop=close, comment="pullback-long")
else
    strategy.cancel("pullback-long")

if (enter_short)
	short_ok := false
    strategy.entry("pullback-short", strategy.short, stop=close, comment="pullback-short")
else
    strategy.cancel("pullback-short")

strategy.exit("exit-long", "pullback-long", limit=upper_band, stop=lower_band)
strategy.exit("exit-short", "pullback-short", limit=lower_band, stop=upper_band)