Избранное трейдера _xXx_

по

Поделитесь роботом на Луа....плиз...

Какое-то время были посты от благодетелей, которые предлагали выкладывать скрипты для создания роботов.

Так как не все далеко тут программисты, то прошу добрых людей выложить полный скрипт робота на луа (который можно сразу загрузить, и он будет работать) с какой-нибудь простой стратегией вроде пересечения средних.
Комментарии к скрипту бы приветствовались.

Думаю, что многие бы сказали спасибо...


  • обсудить на форуме:
  • Quik Lua

Опыт доработки 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

Принципы Рэя Далио. Принцип 3.5: Определи признаки открытого и закрытого ума и наблюдай за ними

📌Принцип 3.5: Определи признаки открытого и закрытого ума и наблюдай за ними

⚡️1.
Закрытоголовые: не хотят чтобы их идеи проверялись/оспаривались. Больше хотят быть правыми, чем узнать мнение других.
Открытые: заинтересованы в причинах несогласия. Они не злятся, когда кто-то не согласен.

⚡️2.
Закрытоголовые: делают заявления, а не задают вопросы.
Открытые: искренне верят, что могут ошибаться, задают больше вопросов

⚡️3. 
Закрытоголовые: фокусируются на том, чтобы быть понятыми, а не на том, чтобы понять других.
Открытые: всегда испытывают нужду посмотреть на вещи глазами другого человека.

⚡️4. 
Закрытоголовые: говорят так: «я могу ошибаться, но я думаю вот что».
Открытые: знают, когда надо делать заявления, а когда задавать вопросы.

⚡️5. 
Закрытоголовые: блокируют других во время разговра, то есть не оставляют времени высказаться.
Открытые: всегда больше заинтересованы в том, чтобы слушать, а не говорить.

⚡️6.
Закрытоголовые: не могут удержать внутри себя два мнения. Они начинают давить собственным мнением на других.
Открытые: могут воспринимать и удерживать в голове чужия мнения, что не мешает им думать.

⚡️7.
Закрытоголовые: нет глубокого чувства смирения.
Открытые: походят к любой теме, сидят на очке, от того, что могут ошибиться.

Блин, читая эти признаки, я понял, что я конечно закрытоголовый🤦‍♂️


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

Моделирование Торговых Систем на Python. 2.

    • 12 мая 2020, 10:29
    • |
    • 3Qu
  • Еще

Тем, кто не читал предыдущий топик этой темы, рекомендую для начала ознакомиться с ним [1].

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

Ну, а сейчас мы займемся разработкой и тестированием индикаторов. Для начала нам нужна простейшая стратегия с использованием МА — его и построим. Самой лучшей по характеристикам МА является ЕМА. Формула ЕМА:



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

Лайфхакер: Что ценят и о чём жалеют люди, дожившие до 90 лет

Лайфхакер: Что ценят и о чём жалеют люди, дожившие до 90 лет


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

Что для них действительно важно

1. Продолжать учиться

В 2017 году 94‑летняя шотландка Джин Миллер (Jean Miller) в интервью The Guardian отметила, что получать новые знания важно независимо от того, сколько тебе лет — 9 или 90. «Жизнь — это образование, и, если не учишься в процессе, это плохо, — сказала она. — Я со временем научилась по‑другому смотреть на вещи».

Джин рассказала, что ходит на занятия спортом, записалась на курсы немецкого, а также стала участницей программы «Университет третьего возраста». Это международное движение для пожилых людей, которое помогает им вместе учиться и заниматься чем‑то интересным. Например, Джин участвует в драмкружке. Она говорит, что именно постоянные поиски новых знаний и впечатлений делают жизнь насыщенной и помогают по‑прежнему чувствовать себя молодой.



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

Грааль, который вы так долго искали

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

Суть в следующем. Возьмем простую трендследящую систему: 

  • если клоуз больше предыдущего клоуза, то покупаем (лонг) на закрытии сессии,
  •  если клоуз меньше предыдущего клоуза, то продаем (шорт) на закрытии сессии.

И попробуем ее протестировать на разных временных периодах. 

Сама система, кстати, по своему гениальна. Во-первых, в ней нет оптимизируемых параметров (sic!) и она либо работает на истории — либо нет. Во-вторых, мы совершаем сделки на закрытии сессии. А открыть/закрыть сделку на закрытии намного легче, чем на открытии. Те, кто профессионально занимался тестированием торговых алгоритмов могут многое об этом рассказать 🙂

Теперь к полученным результатам. Система работает, но только на старшем временном периоде (месячные бары). Почему? Переходим к главному…



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

Моделирование Торговых Систем на Python. 1.

    • 09 мая 2020, 19:31
    • |
    • 3Qu
  • Еще

Для моделирование ТС на Python, прежде всего нужен сам Python. Pythonы бывают очень разные.

Самый большой и длинный Python — Anaconda (https://anaconda.org/). Скачать дистрибутив Anaconda можно здесь — Индивидуальное издание -https://www.anaconda.com/products/individual.
Я работаю именно с Anaconda. Установив Anaconda мы получаем сам Python, уже установленные значительную часть нужных и ненужных пакетов с библиотеками Python, и несколько сред разработки. И все это сразу готово к работе, и нам, по большей части, уже не придется дополнительно устанавливать пакеты и среды.

Самый маленький Python последней версии 3.8.2. скачивается с сайта самого Python — https://www.python.org/. Это, практически, только сам язык, компилятор и минимальный набор пакетов. Сделать с ним практически ничего невозможно, и для работы придется постоянно устанавливать нужные пакеты. Среду разработки придется также устанавливать самостоятельно.
Этот Python больше подходит для запуска и работы с уже отлаженными законченными программами.



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

Принципы Рэя Далио. Принцип 3.2. Практикуй открытый ум

Если у тебя слепые зоны, значит другие могут видеть вещи лучше, чем ты. Тебе надо видеть все варианты, чтобы принимать наилучшие решения.
Приобрети эту способность, практикуй её и ты будешь лучше взаимодействовать с реальностью и радикально улучшишь свою жизнь.

👉 3.2.а. Искренне поверь, что ты можешь не знать лучшие пути. Понять, что ты не знаешь важнее, чем то, что ты знаешь.
Задавать правильные вопросы умным людям куда важнее, чем иметь ответы. Вы не можете принимать великие решения, не выплавая периодически в люди в состоянии незнания. 

👉 3.2.б. Принятие решений состоит из 2 ступеней: 1. собираешь всю доступную информацию. 2. Принимаешь решение.
Большинство людей отвергают информацию, которая не соответствует тому, что они уже решили.

👉 3.2.в. Не думай о том, чтобы выглядеть хорошо. Думай о достижении цели.
Люди которые принимают лучшие решения редко уверены в том, что они имеют все лучшие ответы.

👉 3.2.г. Осознай, что ты не можешь вынуть, не всунув. (?)

👉 3.2.д. Осознай, чтобы увидеть вещи глазами другого человека, тебе надо отложить суждения на время. Только эмпатия поможет понять точку зрения другого.
Открытый ум не означает, что надо всегда принимать чужую точку зрения. Это означает, что надо понять мотивы других людей, вместо того, чтобы тупо и нелогично упираться в свою точку зрения.

👉 3.2.е. Помни, тебе нужен лучшее решение! А не просто лучшее решение, которое может созреть внутри твоей собственной головы. Это не одно и то же.

👉 3.2.ж. Осознай, ты споришь или ищешь и думай что больше всего подходит на основании своих и чужих убеждений.
📌Доверяемые люди — люди которые последовательно и успешно решают проблемы, которые имеют сильный трек-рекорд по меньшей трех успешных проектов, которые в состоянии объяснить причину своего успеха.



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

To trader95

Ответить Вам в топике уже не могу: я теперь  в ЧС.

Американские брокеры свыше 80% сделок на акциях клиентов  не выводят на биржи. Просто потому что они проходят либо внутри брокера, либо в сетях, которые не являются биржами.

Поэтому и клиринг и депозитарный учет идут внутри брокера. Иначе просто невозможно. 

На производных инструментах клиенты американских брокеров также не имеют  персонифицированных счетов на биржах.

А определение брокера, как «кухни», я дал четко: клиринг клиентов внутри брокера.

В этом контексте любая биржа — «кухня» для клиентов и разница только в том, что брокер может пользоваться деньгами клиентов для юридически своих позиций, а биржа нет. 

Честно или нечестно — это другой вопрос. Крупной «кухне» просто невыгодно работать нечестно. Это тоже факт.

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