
Strategi ini menggunakan garis horisontal sebagai titik dukungan dan resistensi, yang menghasilkan sinyal perdagangan ketika harga menembus garis horisontal. Ide utamanya adalah: pertama, gambar garis horisontal sesuai dengan beberapa kondisi, lakukan lebih banyak ketika harga menembus garis horisontal ke atas, dan lakukan lebih banyak ketika harga menembus garis horisontal ke bawah.
Strategi ini menggunakan garis horisontal sebagai titik resistensi pendukung yang penting, menghasilkan sinyal perdagangan dengan menerobos garis horisontal. Kelebihannya adalah logika yang sederhana, mudah dilakukan, dan dapat menangkap tren dengan lebih baik. Namun, kekurangannya adalah kemungkinan perdagangan berlebihan, menghasilkan sinyal yang salah, dan hanya dapat melakukan lebih banyak dan tidak bisa kosong. Selanjutnya dapat dioptimalkan dan diperbaiki dengan menggabungkan indikator lain, mengurangi frekuensi perdagangan, memasukkan mekanisme kosong dan parameter penyesuaian dinamis.
/*backtest
start: 2023-04-20 00:00:00
end: 2024-04-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Traderxprox
//@version=5
strategy("Alarm Trader_ALL", overlay=true)
// Yatay çizgi oluşum
yatayc = low[1] > close[0]
if yatayc
if strategy.opentrades > 0
strategy.close("AL", comment = "Fiyat:" + str.tostring(low[1], "#.##") + "\n" + timeframe.period +"\n Yatay Direnç Oluştu")
else
strategy.entry("AL", strategy.long, comment = "Fiyat:" + str.tostring(low[1], "#.##") + "\n" + timeframe.period +"\n Yatay Direnç Oluştu")
//YATAY ÇİZGİ
int cizgilen = input.int(20, "Çizgi uzunluğu?", group = "Yatay Çizgi Ayarları")
var array<line> lines = array.new<line>()
int numberOfLines = input.int(10, "Son Kaç Çizgi?", 0, group = "Yatay Çizgi Ayarları")
kural22 = low[1] > close[0]
// if kural22
// newLine = line.new(bar_index-2, low[1], bar_index+cizgilen, low[1] ,color=color.red, width=1, style=line.style_solid)
// // Push the `newLine` into the `lines` array.
// lines.push(newLine)
// // Delete the oldest line when the size of the array exceeds the specified `numberOfLines`.
// if array.size(lines) > numberOfLines
// line.delete(lines.shift())
// Alarm kırılım için koşul
var float lastLinePrice = na
if not na(close) and array.size(lines) > 0
lastLinePrice := line.get_price(array.get(lines, array.size(lines) - 1), bar_index)
if open < lastLinePrice and close > lastLinePrice
if strategy.opentrades > 0
strategy.close("AL", comment = "Fiyat:" + str.tostring(lastLinePrice, "#.##") + "\n" + timeframe.period +" \n Yatay çizgi yukarı kırılımı")
else
strategy.entry("AL", strategy.long, comment = "Fiyat:" + str.tostring(lastLinePrice, "#.##") + "\n" + timeframe.period +" \n Yatay çizgi yukarı kırılımı")