В процессе загрузки ресурсов... загрузка...

Цена действия, пирамида, 5% Цель прибыли, 3% Стоп-лосс

Автор:Чао Чжан, Дата: 2024-04-30 16:20:28
Тэги:

img

Обзор

Эта стратегия использует методы ценового действия и пирамидирования для открытия позиции, когда цена падает на 5%, а затем продолжает добавлять позиции через пирамидирование, пока цена не повысится на 5%, чтобы закрыть позицию.

Принцип стратегии

  1. Когда цена упадет на 5%, откройте длинную позицию.
  2. В течение следующих 5 свечей, если цена продолжает падать, продолжайте добавлять позиции, до 4 раз.
  3. Когда цена поднимется на 5%, закрыть все позиции, чтобы получить прибыль.
  4. Если цена достигнет 3% стоп-лосса во время процесса пирамидизации, закрыть все позиции и выйти из стоп-лосса.

Преимущества стратегии

  1. Входит на рынок на ранней стадии формирования тренда, используя возможность переворота цен.
  2. Увеличивает возможности получения прибыли с помощью пирамиды.
  3. Устанавливает стоп-лосс для контроля риска.
  4. Работает 24 часа без ручной помощи.

Стратегические риски

  1. Если цена быстро падает во время пирамидального процесса, это может вызвать стоп-лосс, что приводит к потерям.
  2. Если цена значительно колеблется до достижения уровня получения прибыли, это может снизить прибыль.
  3. Если на рынке наблюдается сильная волатильность или события черного лебедя, стратегия может понести значительные потери.

Направления оптимизации стратегии

  1. Оптимизировать долю добавления и закрытия позиций, например, рассматривать возможность добавления позиций, когда цена падает на 3%, и закрытия позиций, когда цена растет на 7%.
  2. Ввести больше технических индикаторов, таких как RSI и MACD, чтобы помочь оценить тенденцию и сроки открытия и закрытия позиций.
  3. Установление различных параметров для различных рыночных условий и сортов, чтобы адаптироваться к различным характеристикам рынка.

Резюме

Эта стратегия использует методы ценового действия и пирамиды для входа на рынок на ранней стадии формирования тренда и увеличивает возможности получения прибыли за счет добавления нескольких позиций. В то же время стратегия также устанавливает стоп-лосс для контроля риска.


/*backtest
start: 2023-04-24 00:00:00
end: 2024-04-29 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("G Strategija su piramidavimu", overlay=true)


// Vartotojo įvestis investicijų sumai
investment_amount = input(1000.0, title="Investicijų suma")


// Nustatyti nuostolių ir pelno pasiekimo procentus
lossPercentage = input(3, title="Nuostolio procentas (%)") / 100


// Kintamasis saugoti atidarytoms pozicijoms
var int[] entryIndexes = array.new_int(0)
var float[] entryPrices = array.new_float(0)


// Kintamasis, nustatantis, ar turėtume atidaryti naują poziciją
var bool should_buy = false
var int open_candle_count = 0
var int positionCounter = 1 // Pozicijos skaitiklis


// Įėjimo logika (pirkti, kai kaina krenta)
if (hour >= 0 and hour <= 23) // Tikrina, ar yra 24 valandų
    should_buy := false
    for i = 1 to 5
        should_buy := should_buy or (close < close[i] * (1 - lossPercentage))
    if (should_buy and open_candle_count >= 5)
        strategy.entry("Pirkti_" + str.tostring(positionCounter), strategy.long, qty=investment_amount / close)
        array.push(entryIndexes, bar_index)  // Įrašyti atidarymo laiko indeksą
        array.push(entryPrices, close) // Įrašyti atidarymo kainą
        open_candle_count := 0
        positionCounter := positionCounter + 1 // Atnaujinti pozicijos skaitiklį
    else
        open_candle_count := open_candle_count + 1


// Išėjimo logika (uždaryti, kai pasiekiamas pelno lygis)
for i = 0 to array.size(entryIndexes) - 1
    var float takeProfitPrice = na // Nustatyti pradinę reikšmę "na"
    if array.size(entryPrices) > i and array.size(entryPrices) > 0
        takeProfitPrice := array.get(entryPrices, i) * 1.05 // Skaičiuojamas pelno pasiekimo lygis: 5% aukščiau atidarymo kainos
    strategy.exit("TakeProfit_" + str.tostring(i+1), "Pirkti_" + str.tostring(i+1), limit=takeProfitPrice) // Pridėti pelno pasiekimo lygį kaip išėjimo lygį

Больше