Как создать сигнал Ишимоку "3 линии"? - PullRequest
0 голосов
/ 25 марта 2020

Привет. Я пытаюсь написать простую стратегию, основанную на Облаке Ишимоку. Самый сильный и самый прибыльный сигнал Ишимоку - описанный создателем системы Mr.Hosoda - это так называемый «сигнал 3 линий». Сигнал имеет несколько условий: 1. Пересечение линии преобразования по базовой линии 2. Цена закрытия выше линии преобразования 3. Линия преобразования выше baseLine 4. BaseLine выше Cloud / leadLine1 и leadLine2 / 5. Линия смещения выше цены

Проблема: Когда я соединяю все эти условия вместе, я получаю «нет данных».

Работает, но только с Первые три условия / пересечение и закрытие> пересчетная линия и закрытие> базовая линия) Когда я добавляю условия 4. и 5. стратегия показывает «Нет данных». / например: базовая линия> отводная линия1 и исходная линия> отводная линия2 и закрытие> перемещение / Работает только с условием 1,2,3 Так что есть некоторые проблемы с облаком и смещением, но я не могу найти решение

Пожалуйста, помогите :) Спасибо

код / ​​только для длинных записей /:

//@version=4
strategy(title="Ichimoku Cloud", shorttitle="Ichimoku", overlay=true)

conversionPeriods = input(9, minval=1, title="Conversion Line Periods"),
basePeriods = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement = input(26, minval=1, title="Displacement")
profit = input(100, minval=1, title="Profit")
loss = input(100, minval=1, title="Loss")

donchian(len) => avg(lowest(len), highest(len))

conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)

plot(conversionLine, color=#0496ff, title="Conversion Line")
plot(baseLine, color=#991515, title="Base Line")
plot(close, offset = -displacement + 1, color=#459915, title="Lagging Span")

p1 = plot(leadLine1, offset = displacement - 1, color=color.green,
 title="Lead 1")
p2 = plot(leadLine2, offset = displacement - 1, color=color.red, 
 title="Lead 2")
fill(p1, p2, color = leadLine1 > leadLine2 ? color.green : color.red)

entry()=> crossover (conversionLine, baseLine) and close>baseLine and close>conversionLine


strategy.entry (id="Long entry", long=true, when=entry())
strategy.exit (id="Long exit", profit=200, loss=200)

Визуальные условия:

введите описание изображения здесь

...