Избранное трейдера Ramil Shahattudinov
Речь о большом терминале QUIK для Windows.
Часто задаётся вопрос: вышла новая версия терминала QUIK, с полезным функционалом. Хотелось бы её попробовать, но при подключении к серверу брокера никаких обновлений не предлагается, когда брокер выложит у себя новую версию — совершенно не понятно. Как бы обновиться на новую версию?
На самом деле обновлять терминал достаточно просто. Надо лишь помнить следующее:
Точка входа осталась от базового скрипта, эксперимент только по выходу.
Результаты базового скрипта в первой строке
Входы в 10:00 исключены, скрипт не выходит в первых минутах начала торгов
Форвард 2017 г, форвард 2018 г в тестах не участвуют. На этих годах применяем параметры которые получили в тестах
Settings={}
Settings.period = 500
Settings.Name = «xHV»
---------------------------------------------------------------------------------------
function FFF()
local CC={}
local LL={}
local VV={}
return function(ind, _p,_N)
local index = ind
local MAX = 0
local MAXV = 0
local MIN = 0
local RR = 0
local jj = 0
local kk = 0
if index == 1 then
VV={}
CC={}
LL={}
------------------
VV[index]=V(index)
CC[1]=0
return nil
end
------------------------------
VV[index]=V(index)
if index < (Size()-2) then return nil end
MAX = H(index)
MIN = L(index)
for i = 0, _p-1 do
MAX=math.max(MAX,H(index-i))
MIN=math.min(MIN,L(index-i))
end
----------------------------------------
for i = 1, _N do CC[i]=0 end
for i = 0, _p-1 do
jj=math.floor( (H(index-i)-MIN)/(MAX-MIN)*(_N-1))+1
kk=math.floor( (L(index-i)-MIN)/(MAX-MIN)*(_N-1))+1
for k=1,(jj-kk) do
CC[kk+k-1]=CC[kk+k-1]+V(index-i)/(jj-kk)
end
end
--------------------
MAXV = 0
for i = 1, _N do MAXV=math.max(MAXV,CC[i])end
Узнал, что продается робот на Lua, «Автологин терминала QUIK».
Продается то, что есть в открытом виде на quik2dde.ru
Выкладываю тут:
-- quik_login.lua -- Автологин терминала QUIK -- © http://qui2dde.ru/ -- Версия: 2.0 -- для Quik от версии 7.11.1.5 local w32 = require("w32") -- логин и пароль для терминала QUIK_LOGIN = "Uxxxxxxx" QUIK_PASSW = "yyyyy" function FindLoginWindow() hLoginWnd = w32.FindWindow("", "Идентификация пользователя") if hLoginWnd == 0 then hLoginWnd = w32.FindWindow("", "User identification") end return hLoginWnd end timeout = 1000 -- таймаут между попытками поиска окна логина is_run = true function OnStop() timeout = 1 is_run = false end function main() while is_run do sleep(timeout) if isConnected() == 0 then local hLoginWnd = FindLoginWindow() if hLoginWnd ~= 0 then local n1 = w32.FindWindowEx(hLoginWnd, 0, "", "") local n2 = w32.FindWindowEx(hLoginWnd, n1, "", "") local n3 = w32.FindWindowEx(hLoginWnd, n2, "", "") local n4 = w32.FindWindowEx(hLoginWnd, n3, "", "") w32.SetWindowText(n2, QUIK_LOGIN) w32.SetWindowText(n3, QUIK_PASSW) w32.SetFocus(n4) w32.PostMessage(n4, w32.BM_CLICK, 0, 0) end end end endБлагодарности, как понимаю, следует адресовать swerg
В свое время у меня была задумка — посмотреть какой в реальности (включая комиссии) спред между спотом и фьючерсом и стОит ли его торговать. Так как, ни С#, ни Lua я, пока, не изучил, то пришлось писАть на Qpile…
Торговый функционал в скрипте не прописывал, поэтому его можно использовать только, как анализатор.
Кому надо – забирайте, так как я решил для себя дальше эту тему не развивать (по крайней мере пока)…
Выглядит интерфейс вот так:
Особенности:
— текущий фьючерс определяется автоматически, в день экспирации автоматически переключается на новый;
— перед использованием надо указать папку в настройках пользователя для расчетов;
— в скобках отражается средний процент за последние 500 замеров для объективности расчетов (цифру можно менять в настройках пользователя);
Для реализации одной задумки в один прекрасный момент мне необходимо было узнать какие акции, торгуемые на ММВБ, являются самыми волатильными за определенный период…
Скачивать историю по всем акциям и прогонять ее через Excel слишком долго и нудно…
Захотелось написать робота, чтобы он сам за меня все посчитал… Но так как я знаком только с языком программирования Qpile, то мне пришлось столкнуться с проблемой – для получения данных по свечкам используется функция «GET_CANDLE», а она работает только при открытом графике… Открывать в Квике три сотни графиков мне тоже не хотелось…
На помощь пришла «Текущая таблица параметров» в QUIK… Но у нее один недостаток – информация в ней содержится только за текущий день. Что-же делать? Можно и подождать…
Пришлось быстренько написать робота и запустить его для накапливания информации. Каждый торговый день после 18:50 робот сохраняет информацию в файлы и одновременно отображает ее. Формула для расчета простая: (Max-Min)/среднедневная цена. То есть, волатильность в процентном выражении от среднедневной цены.
Далее копируем таблицу в буфер и сортируем в Excel как нам надо...
-----
Кому надо копируйте. Мне не жалко.
На просторах интернета полно информации об анализе графиков цены и самых экзотических технических индикаторах. Чуть менее распространен анализ объемов торгов, по причине отсутствия такового у форекс-брокеров, активно популяризирующих биржевую торговлю. Не сложно найти неплохой учебник по инвестированию и фундаментальному анализу. Но вот, что касается использования ленты сделок и биржевого стакана, здесь русскоязычные ресурсы ограничиваются разъяснением терминов «бид», «аск» и спред, на чем весь анализ этих инструментов, по сути, и заканчивается. Есть неплохие видеоматериалы, но они преимущественно описывают ситуации на рынке США, где ECN и «дарк-пулы» вносят свои коррективы в механику торгов. Данная статья призвана хоть немного, но ликвидировать этот пробел и рассказать о том, как и зачем эти инструменты могут быть использованы на российском рынке обычным частным инвестором.