Постов с тегом "Quik Lua": 237

Quik Lua


Дубликатор сделок QUIK-QUIK LUA

   В середине 2015-го года я сделал простую, но достаточно функциональную утилиту для копирования сделок на языке программирования QPILE, потому, как новый язык программирования QLUA тогда имел много багов и недоработок. Программа оказалась популярна среди частных управляющих, как альтернатива сервисам автоследования COMON, EasyMANi и пр.

   С течением времени появлялись новые пожелания по доработке существующего дубликатора. Однако, в связи с отсутствием возможности перестановки и удаления заявок на срочном рынке для языка QPILE, пришлось написать совершенно новую программу.

    Почти четыре месяца назад, 18 декабря, начал разработку новой программы для копирования сделок для QUIK. Предыдущую программу на QPILE я написал менее, чем за месяц. Сначала рассчитывал сделать за пару месяцев, но проект оказался сложнее раза в два, чем предполагал. Ушло более 100 часов работы над программным кодом. Потом, часов 10 на описание. Пишу программы не каждый день и в своё удовольствие.



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Рабочий код LUA для QUIK по расчету теор цены опциона на Мосбирже

Код взял с сайта bot4sale.ru/

Спасибо автору за публикацию. Дублирую здесь с некоторыми комментами.
Публикую как есть, за ошибки отвественности нет, не является рекомендацией!

LUA код считает цену опциона по формуле БлэкаШоулза.

function cnd(x)

-- taylor series coefficients
   local a1, a2, a3, a4, a5 = 0.31938153, -0.356563782, 1.781477937,-1.821255978, 1.330274429
   local l = math.abs(x)
   local k = 1.0 / (1.0 + 0.2316419 * l)
   local w = 1.0 - 1.0 / math.sqrt(2 * math.pi) * math.exp(-l * l / 2) * (a1 * k + a2 * k * k + a3 * (k^3) + a4 * (k^4) + a5 * (k^5))
   if x < 0 then w = 1.0 - w end
   return w
end

-- The Black-Scholes option valuation function
-- is_call: true for call, false for put
-- s: current price
-- x: strike price
-- t: time
-- r: interest rate
-- v: volatility
function black_scholes(is_call, s, x, t, r, v)
   local d1 = (math.log(s / x) + (r + v * v / 2.0) * t) / (v * math.sqrt(t))
   local d2 = d1 - v * math.sqrt(t)
   if is_call then
      return s * cnd(d1) - x * math.exp(-r * t) * cnd(d2)
   else
      return x * math.exp(-r * t) * cnd(-d2) - s * cnd(-d1)
   end
end
Проверено вчера на путах сишки. Расчет совпал с табличными значениями «теор цена» на июньских, сентярьских, декабрьских досках опционов.

( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Упрощаем инвестирование: Lua-индикатор для определения уровней на графиках QUIK!

Сегодня представляю вам свой Lua-индикатор для торговой платформы QUIK, который поможет вам визуализировать ключевые уровни сопротивления и поддержки на графиках.

Упрощаем инвестирование: Lua-индикатор для определения уровней на графиках QUIK!

Этот инструмент очень полезен, но правда в том, что уровни сопротивления и поддержки у каждого трейдера могут быть разными. Это значит, что алгоритм, который использует индикатор, — это лишь моя субъективная интерпретация!

Вы также можете адаптировать скрипт под свои требования — он открыт для редактирования!

Проверьте сами! Откройте любой график на любом таймфрейме, закройте глаза и нарисуйте «горизонтальную линию». Удивитесь, насколько точно вы определили уровень, когда откроете историю графика!

Лично я не трейдер в классическом смысле, а больше инвестор. Использую уровни только на недельном таймфрейме для ребалансировки своего портфеля.

Цветовая кодировка уровней:

— Зелёная линия — уровень поддержки.
— Красная линия — уровень сопротивления.
— Серая линия — предыдущий уровень, от которого идёт тренд.



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Алготрейдинг. Скрипт Lua для выгрузки истории котировок из Quik'а

Сайт finam.ru и mfd.ru перестали быть полезными для выгрузки истории котировок.
Это скрипт
-- График должен быть открыт в Quik'е
Class = "SPBFUT" -- "CETS_MTL" "CETS"
SecId="BRK4" -- "NGJ4" "GLDRUB_TOM" "USD000UTSTOM" "SiZ3"
Intrvl = INTERVAL_H1 -- D1 -- M5
Header = "<TICKER>;<PER>;<DATE>;<TIME>;"..
  "<OPEN>;<HIGH>;<LOW>;<CLOSE>;<VOL>"
Period = "60" -- Дневки - 0, W1, MN1, H4, H2 - недопустимо

function Log (i)
  local t = DS:T(i)
  local ymd = string.format ("%04d%02d%02d", t.year, t.month, t.day)
  local hms = string.format ("%02d%02d%02d", t.hour, t.min, t.sec);
  if not (IniDt <= ymd and ymd <= FinDt) or
     not (IniTm <= hms and hms <= FinTm) then return end
  local str = string.format ("%s;%s;%s;%s;%.4f;%.4f;%.4f;%.4f;%.0f\n"
    ,SecId, Period, ymd, hms
    ,DS:O(i), DS:H(i), DS:L(i), DS:C(i), DS:V(i))
  F:write (str)
end -- Log()

function OnInit (scriptPath)
  qu = require ("QuikUtil(qu)") -- lu,qc,tu
  ScriptDir, ScriptName = lu.


( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Вопрос по квику

Подскажите, кто пользуется скриптами в lua
При чистке dat и log а также при перезагрузке компьютера в таблице «Доступные скрипты» всё пропадает.
При сохранение руками в info wnd также данные этой таблицы не сохраняются.

Есть ли какие-то варианты сохранить данные скриптов в этой таблице?
  • обсудить на форуме:
  • Quik Lua

Утилита для QUIK Напоминалка

    • 21 сентября 2024, 00:56
    • |
    • Ziveleos
  • Еще

Скрипт для Quik, служит для показа напоминаний:

 • на текущую дату,
 • ежедневных,
 • еженедельных,
 • ежемесячных,
 • ежемесячных в определённый день недели,
 • на конкретную дату, они же ежегодные.

  Напоминания хранятся в обычном текстовом файле, поэтому его можно редактировать в любом текстовом редакторе, например, в «Блокноте».
  После внесения изменений перезапускать скрипт не нужно, главное — не забыть сохранить файл, ибо скрипт — не телепат.
  Если перед временем сообщения поместить какой-нибудь символ, такая строка станет невидимой для скрипта, так можно хранить напоминания о событиях, которые происходят регулярно, но не вписываются ни в одну группу.
  Имена файлов скрипта и напоминаний должны быть одинаковые, отличаться только расширением, и находиться в одной папке.
  Строку "* Сегодня, дд Mmm ГГГГ:" и разделительную линию после этой секции изменять нельзя. По ним скрипт определяет напоминания на текущую дату.

( Читать дальше )
  • обсудить на форуме:
  • QUIK

Программисты Lua!

Во- первых с праздником!
Во-вторых, очень нужна помощь.

Отправка из квика в телеграм канал оповещения.
На Lua.
На php знаю как а на луа опыта нет
  • обсудить на форуме:
  • Quik Lua

Инвестору: Структурируйте свой портфель с помощью нового Lua-скрипта для QUIK

Инвестору: Структурируйте свой портфель с помощью нового Lua-скрипта для QUIK

Как опытный инвестор, вы знаете, что эффективное управление портфелем — ключ к успеху на финансовых рынках. Представляю вашему вниманию новый Lua-скрипт для пользователей торговой платформы QUIK, который поможет вам структурировать свой инвестиционный портфель и отслеживать все необходимые данные в удобном интерфейсе.



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Создание Торговых Стратегий с Помощью ИИ: Легче, Чем Печь Блины

Алгоритм субботняшний

0) Посетить мой сайт https://osaengine.ru/ ))

1) Зайти на chatgpt.com/

2) Написать вопрос

Создание Торговых Стратегий с Помощью ИИ: Легче, Чем Печь Блины

3) Получить ответ

-- Настройки
SEC_CODE = "SBER" -- Код инструмента
CLASS_CODE = "TQBR" -- Код класса инструмента
SHORT_MA_PERIOD = 10 -- Период короткой скользящей средней
LONG_MA_PERIOD = 50 -- Период длинной скользящей средней
QTY = 1 -- Количество лотов

-- Переменные
short_ma = {}
long_ma = {}
prices = {}
position = 0 -- Текущая позиция: 0 - нет позиции, 1 - лонг, -1 - шорт

-- Функция для расчета скользящей средней
function calculate_ma(prices, period)
    local sum = 0
    for i = #prices-period+1, #prices do
        sum = sum + prices[i]
    end
    return sum / period
end

-- Функция для обработки новых тиков
function OnAllTrade(alltrade)
    if alltrade.sec_code == SEC_CODE and alltrade.class_code == CLASS_CODE then
        table.insert(prices, alltrade.price)
        if #prices >= LONG_MA_PERIOD then
            table.


( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Автоматизированная тепловая карта рынка: скрипт Lua для QUIK

Данный скрипт, разработанный на языке программирования Lua для терминала QUIK, представляет собой тепловую карту рынка российских акций. Основные функциональные возможности программы:
 
1. Сортировка данных:

— По временному интервалу

— По алфавиту
— По процентному изменению от предыдущего закрытия свечи на выбранном интервале
Автоматизированная тепловая карта рынка: скрипт Lua для QUIK


    — По капитализации компании



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

....все тэги
UPDONW
Новый дизайн