QUIK


Судак-Тудак (робот) 1.1

Судак-Тудак (робот) 1.1

Слегка доработал простой бот по усреднению и скальпингу Bollinger Bands для QUIK от Turbo Pascal, выложенный тут.


1) Я разделил алго на 2 отдельных: на лонг и на шорт. В оригинале был только лонг и я его использовал для акций. Версия на шорт торгует Mini MIX фьючерс (вы можете любой набор фьючей настроить)
2) Добавил проверку на поступление котировок. Без неё утром выключался бот, приходилось стартовать руками.
3) В версии на шорт добавил усреднение с коэффициентом. Каждый следующий уровень будет на fibo больше предыдущего.
4) Добавил временные рамки (стартуем с 10:00), чтобы не работал когда рынок закрыт.
Хотел подсчёт прибыли добавить, но это уже сложновато сводить концы с концами, поскольку набор и сброс неравномерен. Тут без программиста не справиться.

( Читать дальше )

Lua индикатор для Quik, Bollinger Bands %b Oscillator

Доброго времени всем.
Ищу Lua индикатор для Quik, Bollinger Bands %b (Bollinger Bands %BB Oscillator).  На MT4 есть в открытом виде. Возможно у кого-то уже есть переделанный в lua. Буду очень признателен в помощи его отыскать. Если не найду, придется переписывать самому в lua...(




Кому интересно, переделал индикатор Bollinger Bands (ВВ.lua) под осциллятор Bollinger Bands  %B   





Settings = {
Name = "*BB (Bollinger Bands) %B oscillator",
Period = 20,
Metod = «SMA», --(SMA, MMA, EMA, WMA, SMMA, VMA)
VType = «Close», --(Open, High, Low, Close, Volume, Median, Typical, Weighted, Difference)
Shift=2,
line = {{
Name = «Horizontal line (top)»,
Type = TYPE_LINE,
Color = RGB(221, 44, 44)
},
{
Name = «Horizontal line (bottom)»,
Type = TYPE_LINE,
Color = RGB(221, 44, 44)
},
{
Name = «Bollinger Bands %B oscillator line»,
Type = TYPE_LINE,
Color = RGB(255, 255, 255)
}
},
Round = «off»,
Multiply = 1,
Horizontal_line=«0»
}

function Init()
func = BB_B()
return #Settings.line
end

function OnCalculate(Index)
local Out = ConvertValue(Settings, func(Index, Settings))
local HL = tonumber(Settings.Horizontal_line)
if HL then
return 1+HL,HL,Out
else
return nil,nil,Out
end
end


function BB_B() --Bollinger Bands %B oscillator («BB_B»)
local BB_MA=MA()
local BB_SD=SD()
local it = {p=0, l=0}
return function (I, Fsettings, ds)
local Fsettings=(Fsettings or {})
local P = (Fsettings.Period or 20)
local M = (Fsettings.Metod or SMA)
local S = (Fsettings.Shift or 2)
local VT = (Fsettings.VType or CLOSE)
if (P > 0) then
if I == 1 then
it = {p=0, l=0}
end

local b_ma = BB_MA(I, {Period=P, Metod = M, VType=VT}, ds)
local b_sd = BB_SD(I, {Period=P, Metod = SMA, VType=VT}, ds)
if CandleExist(I,ds) then
if I~=it.p then it={p=I, l=it.l+1} end
if it.l >= P and b_ma and b_sd then



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

Экспорт данных Quik -> DDE -> Ваша программа.

    • 26 мая 2020, 13:56
    • |
    • 3Qu
  • Еще

После написания топика «Quik, DDE, Excel» [1], где была поставлена задача вывода данных доски опционов не непосредственно в Excel, что является очень неудобным для конкретных приложений, а в свой DDE-сервер. Свой DDE-Сервер обладает тем преимуществом, что данные из него можно направлять куда угодно, и как угодно.

С тех пор прошло 3 дня. Черновая болванка программы уже написана, отлажена, работает, и выполняет все возложенные на нее задачи. Как я опрометчиво обещал, проект DDE-Сервера будет предоставлен всем желающим [2](см. список ссылок). Проект выполнен на C++ в среде VS2017. DDE-Сервер на данном этапе выполнен в виде консольного приложения, и все что он делает, это выводит получаемые из Quik по DDE данные на консоль. В принципе, он должен работать с любой таблицей Quik, но делался под вывод доски опционов.

Я этот проект бросаю в таком виде, и уже начинаю на его основе делать приложение для решения своих конкретных задач. На этом наши пути расходятся. Проект поставляется в виде — как есть, и никакие изменения в него мною вносится уже не будут. Теперь это уже ваша задача. Вы можете модифицировать проект под решение ваших конкретных задач.



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

Quik, Какие файлы удалять перед запуском ?

    • 25 мая 2020, 16:42
    • |
    • _sg_
  • Еще
Раньше я всегда перед запуском удалял всего один файл info.log.
Позвонив в Тех. Поддержку Finama, мне посоветовали удалять еще все файлы *.dat
Quik у меня 7.27
Все файлы *.dat, которые находятся у меня в каталоге Quik, представлены у меня в скрипте.

$path = «D:\TradeSoft\Quik-Finam1\»

$quikFilesToDelete =
«info.log»,
«acnt.dat», «alerts.dat», «alltrade.dat»,
«banners.dat», «classes.dat», «firms.dat», «limits.dat»,
«locales.dat», «orders.dat», «par.dat», «portfolio.dat»,
«scripts.dat», «sec.dat», «StratVolat.dat», «tmsg.dat», «tradermsg.dat»,
«trades.dat», «trans.dat», «transresult.dat», «trd_cor.dat»

foreach($f in $quikFilesToDelete)
{
    $fullpath = $path + $f
    Write-Host($fullpath)
    Remove-Item -Path $fullpath
}

Внимание вопрос: Не удалю ли я при этом что-нибудь нужное?
  • обсудить на форуме:
  • QUIK

Quik, DDE, Excel

    • 21 мая 2020, 12:16
    • |
    • 3Qu
  • Еще
Напомню, что обмен по DDE придуман в далеком 1995 году, еще для Windows 3.1.  DDE считается сильно устаревшим методом обмена данными и практически не поддерживается современными приложениями. Остался один Quik, который цепляется за DDE из последних сил.
Вывод по DDE в Excel еще и не удобен для обработки данных. Понадобилось мне, скажем, ввести дополнительно пару-тройку столбцов на опционную доску — в результате, в Excel все столбцы таблицы на листе сместятся, и всю адресацию ячеек листа Excel в программе надо будет переделывать заново.
В MS Access также имеется DDE-сервер, и есть возможность заполнять таблицы БД по DDE, однако Quik c Access по DDE работать не умеет.
В общем, решил, что экспорт таблицы из Quik по DDE надо запихнуть в таблицу базы данных (БД), и уже из БД программно работать с опционной доской. Что, кстати, гораздо удобней для любой таблицы Quik.
Хотел было через Lua — вроде все просто, Lua с таблицами работает. Ан нет, к доске опционов Lua доступа не имеет.
Наверное на С++ или C# связь по DDE надо делать.
И подумалось, а может у Смартлабовцев есть такие уже готовые рабочие решения, чего велосипеды изобретать? По крайней мере, для DDE (никогда программно с ним не работал), а в БД я и сам запихну, и если нужно поделюсь решением — здесь нет никаких ноу-хау.
Помогайте, граждане кто чем может.
  • обсудить на форуме:
  • Quik Lua

Автозапуск QUIK QLUA

Пожалуй, каждый, даже, самый ленивый программист на LUA презентовал свою версию для запуска QUIK.
Пришла и моя очередь.
Вчера, за небольшую благодарность, swerg перевёл w32.dll на LUA 5.3.
Теперь есть поддержка QUIK 8.5 и выше.
Скачать: http://pmntrade.ru/avtozapusk_quik_qlua/avtozapusk_quik_qlua.zip
Страница программы: http://pmntrade.ru/avtozapusk_quik_qlua.html
Видео:


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

Настройка Quik под 4K монитор

Долгое время работал за FullHD мониторами и не испытывал необходимости что-то менять. Действительно, в повседневных задачах наличие 4K непринципиально. Да и не каждый комп вообще с 4K справится.

Но при активной работе с графиками в Quik — я начал ощущать ограничения. Мне не нравилось, что тело свечи пропадает и мылится при увеличении масштаба графика. При дальнейшем увеличении масштаба — черточки, оставшиеся от свечей — начинают наезжать друг на друга, образуя месево из пикселей.


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

QUIK оповещение об объеме

Подскажите, пожалуйста, как можно сделать в QUIK'e оповещение об определенном объеме, например, на 5 мин ТФ?
Я использую стандартные звуковые оповещения по достижению цены определенного уровня, а по объему стандартной опции не нашел.

P.S. Нашел вот эту тему с скриптом Alerter - https://smart-lab.ru/vopros/309743.php
  • обсудить на форуме:
  • QUIK

....все тэги
2010-2020
UPDONW