George Martin
George Martin личный блог
11 марта 2024, 13:13

Добавление индикаторов в Quik в Lua script. Ну типа помощь нужна )

Камрады, добрый день или что еще существует в вашей реальности)) Вопросом озадачен я, как сделать так чтобы грааль волшебный в Lua, индикатор тобишь, был помещен в сосуд волшебный, т.е. Quik, при том что изначально чародей создал заклятье в Pine script(e)? Поскольку разумом и знанием слегка я обделен, спросил я нейросеть, что знает все на свете, могла б ли ты помочь мне в этом и перевести заклятье? В итоге получив два разных варианта перевода, естественно от разных сеток, я переправил это мудрецам из круга своего знакомых… Те были несказанно в думе, мгогозначительно сказав, что нет прямого перевода Пина в Луа, что сети явно мне солгали, при этом взяв на изученье сей манускрипт сетей. Однако зная лет 15, что на ресурсе шмартлабру, издревля существуют создатели кодов, а также продавцы порожняка, решил я сделать сие повествование, в надежде помощи и кооперации, а также безусловно предложений алчных от неких тайных колдунов ))) последние конечно алтын с меня стянуть не смогут...)))
Кароче, товарищи кодеры, кто прям на раз два с луа и добавлял в квика свои творения не раз, подсобите прикрутить или быть может дать какие то материалы наводки, что кенты мои смогли допилить. п.с. там очень хорошая штука. аналоговнет))
7 Комментариев
  • Fairman
    11 марта 2024, 13:39
    Нужна конкретика в виде ТЗ, а не вот это все… И на будущее — Quik
  • nsk54
    11 марта 2024, 13:45
    Увы, по-ходу!
    1. smart-lab.ru/vopros/805635.php
  • Ray Intraday
    11 марта 2024, 20:08

    Если с помощью нейронки перевести на Qlua, то получим нечто подобное, осталось только дополнить пробелы:

    — Инициализация переменных

    init()
    OnCalculate()
    local comparedSymbol = «SPY» — Символ для сравнения
    local length = 12 — Длина периода

    — Функция для вычисления RRS
    function calcRRS(close, comparedClose, length)
    local comparedRollingMove = close[1] — close[length + 1]
    local symbolRollingMove = comparedClose[1] — comparedClose[length + 1]

    local symbolRollingATR = ATR(close, length)[1]
    local comparedRollingATR = ATR(comparedClose, length)[1]

    local powerIndex = comparedRollingMove / comparedRollingATR
    local RRS = (symbolRollingMove — powerIndex * symbolRollingATR) / symbolRollingATR
    return RRS
    end

    — Функция для вычисления корреляции
    function Correlation(close, comparedClose, length)
    — Здесь должен быть код для вычисления корреляции
    — Поскольку QLua не имеет встроенной функции для корреляции,
    — этот код будет заглушкой
    return 0
    end

    — Основная функция
    function OnCalculate()
    — Получение данных
    local close = getClosePrices(length + 1)
    local comparedClose = getClosePrices(comparedSymbol, length + 1)

    — Вычисление RRS
    local RRS = calcRRS(close, comparedClose, length)

    — Вывод RRS на график
    — Здесь должен быть код для вывода RRS на график

    — Вычисление корреляции
    local correlated = Correlation(close, comparedClose, length)

    — Вывод корреляции на график
    — Здесь должен быть код для вывода корреляции на график
    end

    — Функция для получения цен закрытия
    function getClosePrices(symbol, length)
    — Здесь должен быть код для получения цен закрытия
    — Этот код будет заглушкой
    return {}
    end

    — Функция для вычисления ATR
    function ATR(close, length)
    — Здесь должен быть код для вычисления ATR
    — Этот код будет заглушкой
    return {}
    end

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн