
Strategi terhad jangka pendek adalah strategi perdagangan frekuensi tinggi dengan kedudukan kosong yang ditubuhkan ketika harga mendekati atau menembusi garis sokongan. Strategi ini menggunakan penembusan jangka pendek harga untuk menangkap turun naik pasaran dan menghasilkan keuntungan.
Strategi ini pertama kali mengira garis regresi linear harga. Jika harga penutupan sebenar adalah lebih rendah daripada harga penutupan yang diramalkan, kedudukan berlainan ditubuhkan; Jika harga penutupan sebenar lebih tinggi daripada harga penutupan yang diramalkan, kedudukan kosong ditubuhkan.
Parameter utama termasuk:
Strategi utama strategi ini adalah untuk menangkap harga yang pendek untuk memecahkan garis rata-rata. Apabila harga mendekati atau menembusi garis sokongan atau rintangan, kedudukan yang tepat akan dibuat; dan menetapkan stop loss dan stop loss yang sangat kecil, segera menetap selepas keuntungan, dan ulangi prosesnya.
Strategi ini mempunyai kelebihan berikut:
Strategi ini mempunyai beberapa risiko:
Tindakan-tindakan tindak balas terhadap risiko termasuk:
Strategi ini boleh dioptimumkan dengan cara berikut:
Strategi kosong terhad jangka pendek adalah strategi perdagangan frekuensi tinggi yang tipikal. Ia menangkap turun naik harga jangka pendek dengan meletakkan kedudukan tepat pada masanya di dekat titik harga utama dan menetapkan halangan kerugian yang sangat kecil. Walaupun boleh memperoleh keuntungan yang tinggi, ia juga menghadapi risiko tertentu.
/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Extreme Scalping", overlay=true )
src = input(close,title="Source")
len = input(defval=14, minval=1, title="Length")
offset = input(1)
out = linreg(src, len, offset)
plot(out)
gap_tick=input(100)
fixedTP=input(300)
fixedSL=input(100)
useFixedSLTP=input(true)
direction=input(defval="ALL",title="Direction of order",options=["ALL","BUY ONLY","SELL ONLY"])
gap=gap_tick*syminfo.mintick
plot(out+gap,color=color.red)
plot(out-gap,color=color.green)
tp=useFixedSLTP?fixedTP:gap_tick
sl=useFixedSLTP?fixedSL:gap_tick
longCondition = close<(out-gap) and (direction=="ALL" or direction=="BUY ONLY")
shortCondition = close>(out+gap) and (direction=="ALL" or direction=="SELL ONLY")
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("exit long","Long",profit = tp,loss = sl)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("exit short","Short",profit =tp,loss=sl)
// === Backtesting Dates === thanks to Trost
// testPeriodSwitch = input(true, "Custom Backtesting Dates")
// testStartYear = input(2019, "Backtest Start Year")
// testStartMonth = input(10, "Backtest Start Month")
// testStartDay = input(3, "Backtest Start Day")
// testStartHour = input(0, "Backtest Start Hour")
// testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,testStartHour,0)
// testStopYear = input(2019, "Backtest Stop Year")
// testStopMonth = input(12, "Backtest Stop Month")
// testStopDay = input(31, "Backtest Stop Day")
// testStopHour = input(23, "Backtest Stop Hour")
// testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,testStopHour,0)
// testPeriod() =>
// time >= testPeriodStart and time <= testPeriodStop ? true : false
// isPeriod = testPeriodSwitch == true ? testPeriod() : true
// // === /END
// if not isPeriod
// strategy.cancel_all()
// strategy.close_all()