Simbol Dagangan Candlestick Saiz Ambang Strategi Perdagangan

TICKS CST ES NQ CL
Tarikh penciptaan: 2025-02-21 10:17:23 Akhirnya diubah suai: 2025-02-27 17:17:35
Salin: 1 Bilangan klik: 277
2
fokus pada
319
Pengikut

Simbol Dagangan Candlestick Saiz Ambang Strategi Perdagangan Simbol Dagangan Candlestick Saiz Ambang Strategi Perdagangan

Gambaran keseluruhan

Strategi ini mengesan dan memperdagangkan pergerakan harga penting berdasarkan saiz tiub. Strategi ini dapat dikawal dengan tepat dengan menetapkan ambang titik tertentu, jendela masa perdagangan dan had jumlah transaksi harian. Strategi ini dioptimumkan khusus untuk pasaran niaga hadapan dan dapat menangkap perubahan harga yang ketara pada masa yang tinggi.

Prinsip Strategi

Logik teras strategi ini adalah dengan mengira perbezaan tinggi dan rendah setiap garisan (dalam satuan titik) dan membandingkannya dengan had yang ditetapkan. Apabila garisan melebihi had dan dalam tetingkap waktu perdagangan yang ditetapkan (dengan default AS 7:00-9:15), sistem akan mencetuskan isyarat perdagangan multi-air mengikut arah garisan. Untuk mengawal risiko, strategi ini mengehadkan hanya menjalankan satu perdagangan sehari dan menetapkan titik stop-loss.

Kelebihan Strategik

  1. Kawalan markah yang tepat - memastikan ketepatan pelaksanaan urus niaga melalui pengiraan tahap tick
  2. Penapisan masa - menumpukan pada perdagangan pada masa ketika pasaran paling aktif
  3. Pengurusan risiko - menetapkan titik berhenti dan kehilangan yang jelas untuk melindungi wang anda
  4. Kawalan frekuensi dagangan - Hadkan satu dagangan sehari untuk mengelakkan dagangan berlebihan
  5. Petua visual - Keterangan yang mencetuskan transaksi akan dipaparkan dengan terang untuk memudahkan analisis
  6. Keserasian retrospektif - mengandungi ciri-ciri seperti penapisan tarikh dan pelaksanaan masa untuk memudahkan retrospeksi sejarah

Risiko Strategik

  1. Risiko turun naik pasaran - mungkin mencetuskan isyarat yang salah semasa turun naik yang teruk
  2. Risiko slippage - Perdagangan berkelajuan tinggi dalam pasaran niaga hadapan boleh menyebabkan harga sebenar tidak sesuai
  3. Kos peluang - had satu dagangan sehari mungkin terlepas peluang dagangan yang baik
  4. Ketergantungan masa - keberkesanan strategi sangat bergantung pada pilihan waktu perdagangan

Arah pengoptimuman strategi

  1. Had dinamik - Had saiz tiub yang disesuaikan secara automatik mengikut turun naik pasaran
  2. Multiple time-period - menambah tanda pengesahan untuk beberapa time-period
  3. Penapisan jumlah transaksi - penambahan indikator jumlah transaksi sebagai penilaian tambahan
  4. Penunjuk sentimen pasaran - menilai keadaan pasaran dengan penunjuk seperti kadar turun naik
  5. Stop loss penyesuaian - Stop loss yang ditetapkan secara dinamik berdasarkan turun naik pasaran

ringkaskan

Strategi ini menyediakan sistem perdagangan yang boleh dipercayai untuk perdagangan niaga hadapan melalui kawalan mata tepat dan penapisan masa yang ketat. Kelebihannya terletak pada ketepatan dan kawalan risiko yang dilaksanakan, tetapi juga memerlukan pengaturcara untuk mengoptimumkan parameter mengikut varieti dan keadaan pasaran tertentu. Dengan arah pengoptimuman yang disyorkan, strategi ini dapat meningkatkan daya adaptasi dan kestabilan.

Kod sumber strategi
/*backtest
start: 2025-02-15 01:00:00
end: 2025-02-20 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"DOGE_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © omnipadme

//@version=5
strategy("Futures Candle Size Strategy (Start Trading on Jan 1, 2025)", overlay=true)

// Input for candle size threshold in ticks
candleSizeThresholdTicks = input.float(25, title="Candle Size Threshold (Ticks)", minval=1)

// Input for take profit and stop loss in ticks
takeProfitTicks = input.float(50, title="Take Profit (Ticks)", minval=1)
stopLossTicks = input.float(40, title="Stop Loss (Ticks)", minval=1)

// Time filter for trading (e.g., 7:00 AM to 9:15 AM CST)
startHour = input.int(7, title="Start Hour (CST)", minval=0, maxval=23)
startMinute = input.int(0, title="Start Minute (CST)", minval=0, maxval=59)
endHour = input.int(9, title="End Hour (CST)", minval=0, maxval=23)
endMinute = input.int(15, title="End Minute (CST)", minval=0, maxval=59)

// Tick size of the instrument (e.g., ES = 0.25)
tickSize = syminfo.mintick

// Convert tick inputs to price levels
candleSizeThreshold = candleSizeThresholdTicks * tickSize
takeProfit = takeProfitTicks * tickSize
stopLoss = stopLossTicks * tickSize

// Time range calculation
startTime = timestamp("GMT-6", year(timenow), month(timenow), dayofmonth(timenow), startHour, startMinute)
endTime = timestamp("GMT-6", year(timenow), month(timenow), dayofmonth(timenow), endHour, endMinute)
inTimeRange = (time >= startTime and time <= endTime)

// Filter to start trading only from January 1, 2025
startTradingDate = timestamp("GMT-6", 2025, 1, 1, 0, 0)
isValidStartDate = time >= startTradingDate

// Calculate the candle size for the current candle
candleSize = math.abs(high - low)

// Track whether a trade has been executed for the day
var hasTradedToday = false
isNewDay = dayofweek != dayofweek[1]  // Detect new day

// Reset `hasTradedToday` at the start of a new day
if isNewDay
    hasTradedToday := false

// Trigger condition for futures trading (only if no trade has been executed today)
triggerCondition = isValidStartDate and inTimeRange and candleSize >= candleSizeThreshold and not hasTradedToday

// Entry logic: If condition is met, enter a trade
if triggerCondition
    hasTradedToday := true  // Mark as traded for the day
    if close > open  // Bullish candle
        strategy.entry("Buy", strategy.long)
    if close < open  // Bearish candle
        strategy.entry("Sell", strategy.short)

// Set take profit and stop loss
strategy.exit("Exit Long", from_entry="Buy", limit=close + takeProfit, stop=close - stopLoss)
strategy.exit("Exit Short", from_entry="Sell", limit=close - takeProfit, stop=close + stopLoss)

// Alerts for triggered condition
if triggerCondition
    alert("Candle size is " + str.tostring(candleSizeThresholdTicks) + " ticks or greater. Trade initiated.", alert.freq_once_per_bar)

// Color the alert candle white
barcolor(triggerCondition ? color.white : na)

// Visual aids for backtesting
bgcolor(isValidStartDate and inTimeRange ? color.new(color.green, 90) : na, title="Time and Date Range Highlight")