Как преобразовать торговые стратегии из Pinescript в Python, так что сигналы будут соответствовать?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как преобразовать торговые стратегии из Pinescript в Python, так что сигналы будут соответствовать?

Сообщение Anonymous »

Я хочу превратить стратегии/индикаторы от сценариев TradingView Pinescript в Python. Может ли кто -нибудь объяснить меня на основе и, я думаю, простой пример, почему Pinescripts отличаются, и что я не так делаю? Вы можете найти это, это основная стратегия не сообщества < /p>
У него такой код: < /p>
strategy("Momentum Strategy", overlay=true)
length = input(12)
price = close
momentum(seria, length) =>
mom = seria - seria[length]
mom
mom0 = momentum(price, length)
mom1 = momentum( mom0, 1)
if (mom0 > 0 and mom1 > 0)
strategy.entry("MomLE", strategy.long, stop=high+syminfo.mintick, comment="MomLE")
else
strategy.cancel("MomLE")
if (mom0 < 0 and mom1 < 0)
strategy.entry("MomSE", strategy.short, stop=low-syminfo.mintick, comment="MomSE")
else
strategy.cancel("MomSE")
< /code>
Как вы можете видеть, очень просто.
Этот код генерирует такие сигналы:
, как вы можете видеть, только 2 сигнала в течение 42 минут < /p>
Но когда я начал превращать этот скрипт в Python, а затем на графике я обнаружил, что мой код генерирует гораздо больше сигналов, и я не могу понять, почему. Расчет без библиотек ТА: < /p>
def add_momentum_strategy_signals(df, length=12):
df['mom0'] = df['close'] - df['close'].shift(length)
df['mom1'] = df['mom0'] - df['mom0'].shift(1)

df['momentum_signal'] = 0

long_condition = (df['mom0'] > 0) & (df['mom1'] > 0)
short_condition = (df['mom0'] < 0) & (df['mom1'] < 0)

df.loc[long_condition, 'momentum_signal'] = 1
df.loc[short_condition, 'momentum_signal'] = -1
tick_size = df['close'].diff().abs().median()
df['long_stop'] = df['high'] + tick_size
df['short_stop'] = df['low'] - tick_size

return df
< /code>
Как вы можете видеть, он сгенерировал мне гораздо больше сигналов: < /p>
сигналы < /p>
Ну, тогда я решил использовать библиотеку талиб: < /p>
def momentum_strategy_talib(df, length=12):
mom0 = ta.MOM(df['close'], timeperiod=length)
mom1 = ta.MOM(mom0, timeperiod=1)

df['signal'] = None
df['stop_price'] = None
df['order_type'] = None

for i in range(length, len(df)):
if mom0 > 0 and mom1 > 0:
df.loc[i, 'signal'] = 'buy'
df.loc[i, 'stop_price'] = df['high'] + df['high'].diff().mean()
df.loc[i, 'order_type'] = 'stop'

elif mom0 < 0 and mom1 < 0:
df.loc[i, 'signal'] = 'sell'
df.loc[i, 'stop_price'] = df['low'] - df['low'].diff().mean()
df.loc[i, 'order_type'] = 'stop'

return df

< /code>
Результат такой же. Гораздо больше сигналов, чем должно быть. Результаты с талибом < /p>
Я думаю, это мое недопонимание оснований Pinescript против Python. Можете ли вы, чтобы в этом основном и простом примере показать мне, как я могу исправить свой код, чтобы моя реализация Python соответствовала телевизионным сигналам? Приведите свой пример?

Подробнее здесь: https://stackoverflow.com/questions/789 ... -would-mat
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как преобразовать торговые стратегии из Pinescript в Python, так что сигналы будут соответствовать?
    Anonymous » » в форуме Python
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • У меня есть сигналы в службе, я хочу выставить эти сигналы компонентам (без использования Getter)
    Anonymous » » в форуме Html
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Итеративный алгоритм на основе классов с шаблоном стратегии с шаблоном стратегии
    Anonymous » » в форуме Python
    0 Ответы
    35 Просмотры
    Последнее сообщение Anonymous
  • Как переписать мой код Pinescript в Python
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • TradingView Pinescript в конверсию Python
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»