Избранное трейдера Артем Иванов

по

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

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

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


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

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

Как подключить бесплатные быстрые платежи в сбербанке.

Возможно баян, но сбербанк по тихому подключился к системе быстрых платежей чтобы его не штрафовали, но спрятал глубоко в настройках включение быстрых БЕСПЛАТНЫХ(до 100 000 руб. в месяц) межбанковских платежей и только в мобильном приложении, чтобы никто не нашел… Альфа-банка «по дружбе» обнародовала как найти, делюсь:

Как подключить бесплатные быстрые платежи в сбербанке.


Экспорт данных 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

80 новых акций на Санкт-Петербургской бирже

В понедельник 18 мая Санкт-Петербургская биржа планово расширила список иностранных ценных бумаг, доступных на торгах. Добавлены 80 новых акций с суммарной рыночной капитализацией $642 млрд., многие из них рекомендованы брокерами и их клиентами. 15 наиболее известных акций мы разберем в данном материале.  

Полный список добавленных бумаг можно посмотреть и скачать здесь. Стоит отметить, что большая часть новых эмитентов, а если точнее 73, выплачивает ежеквартальные дивиденды. 

Мы отобрали по три наиболее интересные компании из 5 секторов, среди которых есть разработчики тестов COVID-19, поставщики удаленных медицинских услуг, СМИ, ломбарды, знаменитые сети быстрого питания и многие другие. 

 

Услуги связи 

T-Mobile US, Inc. (SPB: TMUS) – один из крупнейших сотовых операторов США, значительная доля акций которого принадлежит немецкой компании Deutsche Telekom. Поставляет услуги беспроводной связи и сопутствующих беспроводных устройств и аксессуаров 86 миллионам клиентов. В декабре 2019 года T-Mobile запустил первую в Америке, крупнейшую и единственную общенациональную сеть 5G, которая обслуживает более 200 миллионов человек и более 5 000 городов и населенных пунктов на всей территории США. Компания показывает устойчивый рост выручки на протяжении последних 7 лет. Выручка за 2019 год составила $45 млрд (+3,9%), выручка в 1 кв. 2020 составила $8,7 млрд (+5% относительно 1 кв. 2019). 



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

Бэктест мультипликаторов PE, PS, PB и других

Когда-то давно я устроился на работу в небольшой брокерской компании. Помню, первый вопрос на рабочем месте от начальника отдела, старого многоопытного спокойного еврея, поверг меня в шок: «Покажите как вы определяете лучшие акции?» А я-то думал, мне все расскажут и покажут! Сильно смутившись, я начал что-то лепетать про P/E, P/S и количество абонентов. «Ну это фигня какая-то! Идите думайте» — тихим голосом неожиданно изрек вежливый начальник, во мгновенье растоптав во мне всякое самоуважение. Я думал — меня уволят в ту же неделю, но оказалось, это нормальный способ руководства у шефа. Дело было в крайне презрительном отношении начальника к P/S, ведь этот коэффициент не учитывает долги компании. Тогда, в начале нулевых стандарты задавал Стивен Дашевский, прекрасный аналитик из Атона. Этот экспат, рулевой и светоч аналитиков, любил и продвигал три мультипликатора P/E, EV/EBITDA и EV/S. Эта тройка мультов и до сих пор на пьедестале в крупных домах, например в Сбербанк-КИБ. Проделав это исследование, я могу уверенно сказать, что мой подход в прошлом был не так уж и плох. А указанная тройка вовсе не объект для поклонения, другие параметры работают не хуже.



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

Автозапуск 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 Lua

Новичкам. Как подсчитать HV для фьюча Ri? Для чего нужна Дисперсия?

Доброе утро, страна (пока писал топик, было еще утро).

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

Классические опционщики бьют себя всё время в грудь, утверждая, что голые конструкции они не торгуют, голые конструкции торгуют видите ли лишь опционные лохи, а они, мол, такие крутые, торгуют волатильность. Что это значит?

Всё очень просто. Они высчитывают всего лишь 2 параметра: IV и HV, где

IV — ожидаемая волатильность,
HV — историческая волатильность.

Если IV>HV, то они продают волатильность, если IV<HV, то они покупают волатильность.

Как всё просто, да?

Просто. Но есть очень много нюансов.

Сегодня разберемся с одним из параметров, а именно с HV.

Историческая волатильность.

Историческая волатильность определяется как стандартное отклонение логарифмических изменений цены, взятых через равные интервалы времени. Поскольку наиболее надежными обычно считаются расчетные цены, самый распространенный метод определения волатильности предполагает использование именно изменений расчетной цены (а есть еще способ, когда мы не знаем расчетных цен, а знаем максимумы и минимумы, считаем через них, но нам это неинтересно).

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

Опыт доработки QLua-скриптов для QUIK 8.5.2

    • 15 мая 2020, 16:29
    • |
    • _sk_
  • Еще
В новой версии терминала QUIK 8.5.2 произведён апгрейд языка Lua для написания торговых скриптов с версии 5.1 до версии 5.3. Это нужно для того, чтобы корректно обрабатывать 19-значные номера заявок и сделок на срочном рынке МосБиржи. Типа number в Lua 5.1 не подходит: там все числа хранятся как double, соответственно целые числа до 2^53 = 9 007 199 254 740 992 записываются без потери точности, а 19-значные номера заявок и сделок будут больше этой границы.

Версия Lua 5.3 обратно несовместима с Lua 5.1. Я почти не использовал внешние библиотеки и для меня было два важных изменения: отказ от module (это было сделано в версии 5.2) и введение целочисленной арифметики (версия 5.3).

Для избавления от использования module пришлось переработать много кода, хотя изменения были несложные. Приведу пример. Раньше был такой код Arrays.lua для работы с массивами:

--
-- Выполнение действий с массивами.
--

local pairs = pairs
local type = type

module(...)

--- Создать копию массива (таблицы)
-- @return копию массива (таблицы)
function copy(array)
    local copy_array = {}
    if type(array) ~= "table" then
        return array
    end
    for k, v in pairs(array) do
        if type(v) == "table" then
            copy_array[k] = copy(v)
        else
            copy_array[k] = v
        end
    end
    return copy_array
end

--- Узнать, начинается ли индексация в массиве с нуля или с единицы.
-- @return 0 или 1
function base(array)
    if array[0] ~= nil then
        return 0
    else
        return 1
    end
end

--- Вычислить число элементов в массиве.
-- @return число элементов в массиве
function size(array)
    local n = 0
    for _, _ in pairs(array) do
        n = n + 1
    end
    return n
end

--- Проверить пустой или нет массив.
-- @return true/false
function isEmpty(array)
    for _, _ in pairs(array) do
        return false
    end
    return true
end

--- Получить первый индекс массива, где ничего не записано. Поиск начинается с 1.
-- @return первый индекс массива, где ничего не записано
function firstEmptyIndex(array)
    local i = 1
    while array[i] ~= nil do
        i = i + 1
    end
    return i
end


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

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