Strategi ini membuat keputusan dagangan berdasarkan perubahan peratusan daripada harga pembukaan 5 minit pada pukul 2:00 pagi setiap hari, menggunakan penembusan dua peringkat untuk menetapkan keadaan pencetus yang berbeza, bertujuan untuk menangkap pergerakan harga yang signifikan di pasaran yang berbeza.
Strategi ini mengira perubahan peratusan lilin 5 minit semasa berdasarkan harga pembukaannya berbanding harga pembukaan lilin 5 minit pada pukul 2:00 pagi setiap hari. Apabila perubahan peratusan melebihi ambang pecah peringkat pertama, keputusan membeli atau menjual yang sesuai dibuat. Stop loss dan mengambil keuntungan juga ditetapkan untuk menutup kedudukan.
Jika stop loss diaktifkan, apabila perubahan peratusan terus berkembang dan melebihi keadaan pencetus peringkat kedua, pesanan terdahulu akan dibatalkan dan pesanan beli atau jual baru menggunakan ambang peringkat kedua akan diletakkan, dengan stop loss dan mengambil keuntungan terus dikesan.
Persediaan pecah dua peringkat menapis beberapa bunyi semasa pasaran berkisar, hanya membuat perdagangan pada pergerakan harga yang lebih ketara.
Pengurangan:
Strategi ini menangkap lonjakan harga menggunakan penembusan dua peringkat di pasaran yang berbeza, menapis bunyi bising dengan berkesan. Konsepnya mudah dan jelas, dan dapat mencapai hasil yang baik melalui pengoptimuman parameter. Langkah seterusnya adalah untuk menggabungkan dengan penunjuk trend untuk memaksimumkan prestasi semasa pasaran yang sedang tren. Secara keseluruhan ini adalah strategi baru yang menggunakan prinsip penembusan dengan baik, dan dapat mencapai hasil yang kukuh selepas penyesuaian.
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Auto Entry Bot", overlay=true) // Define input for the stop loss and take profit levels stopLossPips = input.int(200, title="Stop Loss Pips", minval=1) takeProfitPips = input.int(400, title="Take Profit Pips", minval=1) // Calculate the percentage change from the 5-minute opening candle at 2:00 AM var float openPrice = na if (hour == 2 and minute == 0) openPrice := open percentageChange = (close - openPrice) / openPrice * 100 // Track the cumulative percentage change var float cumulativeChange = 0 // Define input for the percentage change trigger triggerPercentage1 = input.float(0.25, title="Percentage Change Trigger (%)", minval=0.01, step=0.01) triggerPercentage2 = input.float(0.35, title="Additional Trigger Percentage (%)", minval=0.01, step=0.01) // Check for price change trigger if (percentageChange >= triggerPercentage1) // Sell signal strategy.entry("Sell", strategy.short) strategy.exit("ExitSell", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade if (percentageChange <= -triggerPercentage1) // Buy signal strategy.entry("Buy", strategy.long) strategy.exit("ExitBuy", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade // If the price keeps hitting stop loss, activate the second trigger if (strategy.position_size < 0 and percentageChange <= -triggerPercentage2) strategy.cancel("Sell") // Cancel previous sell order strategy.entry("Sell2", strategy.short) strategy.exit("ExitSell2", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade if (strategy.position_size > 0 and percentageChange >= triggerPercentage2) strategy.cancel("Buy") // Cancel previous buy order strategy.entry("Buy2", strategy.long) strategy.exit("ExitBuy2", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade