VPM (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 2 3 4 5 6 7 8 9 10 11 12 ... 24 След.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
VPM написал:
Если вы хотите продолжить общение со мной в стиле (посмотрите начиная со ссылки и до конца ветки):  https://forum.quik.ru/messages/forum10/message62917/topic7277/#message62917 ,то, при том что это мне не интересно, я вам это обеспечу.
Что это за угроза я не понял :shock:  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
TGB, История у форума огромная, и если есть на что сослаться, лучше давать ссылку, мы с Вами не так давно общаемся, чтоб я читал Ваши мысли, и давно уже всем предлагаю, обсуждать не мой стиль изложения а излагаемую проблематику, программирование на луа, меня это интересует. Да я не всегда бываю прав, и если это обосновано представлено всегда готов признать. А если нечего сказать по теме, то зачем плодить флуд, тем более что есть код.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
TGB, "Зачем козе баян"? В Ваш "неокрепший ум смуту" внести мне не под силу. Вам бы не мешало для начало научиться читать, от начало до конца,  улавливая смыслы. А поэтов здесь хватает и без Вас. Что писать, о чем писать когда, писать, кому писать .... позвольте мне решать, заранее благодарю.

Теперь по сути вот целиком к прочтению Специально для Вас дублирую.
Цитата
VPM написал:
Суть в следующем: В Lua относительно легко реализуется, событийно-ориентированная модель программирования, она хорошо подходит для обработки асинхронных событий. Такой подход позволяет приложениям Lua обрабатывать несколько событий одновременно без блокировки основного потока выполнения приложения. События обрабатываются в фоновом режиме, не прерывая поток выполнения приложения. В приложениях регистрируют функции обратного вызова для обработки конкретных событий. Когда происходит событие, соответствующая функция обратного вызова вызывается для его обработки, а затем управление возвращается потоку выполнения приложения. Такой подход (обработка асинхронных событий) мне показался логичным для обработки не торговых операций, к примеру отслеживаем время торгов, торги идут передаем управление в основной поток для проведения операций, отследили время остановки (событие пришло) остановили выполнение.
Ниже приведен пример, да же моей "козе" понятно что это сопрограмма. Функция обратного вызова зарегистрирована как сопрограмма для обработки различных событий. Известный факт, что  поток выполнения приложения не блокируется при ожидании событий. Не знаю что тут еще нужно комментировать,

Да я и не настаиваю ни на чем, гоняю тесты с данным подходом вызывая срабатывание разных событий, и предлагаю к обсуждению этот подход.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Относительно не давно на форуме обсуждалась тема различных проверок до исполнения приложения и во время исполнения. Ветку честно говоря поленился искать, так как тема подходит для освящения данного вопроса и в этой, какие уж тут принятия решений, если данные получены не верные. Решил обсудить здесь, подход к этому вопросу предлагаю не совсем традиционный.  
Суть в следующем: В Lua относительно легко реализуется, событийно-ориентированная модель программирования, она хорошо подходит для обработки асинхронных событий. Такой подход позволяет приложениям Lua обрабатывать несколько событий одновременно без блокировки основного потока выполнения приложения. События обрабатываются в фоновом режиме, не прерывая поток выполнения приложения. В приложениях регистрируют функции обратного вызова для обработки конкретных событий. Когда происходит событие, соответствующая функция обратного вызова вызывается для его обработки, а затем управление возвращается потоку выполнения приложения.
Такой подход (обработка асинхронных событий) мне показался логичным для обработки не торговых операций, к примеру отслеживаем время торгов, торги идут передаем управление
в основной поток для проведения операций, отследили время остановки (событие пришло) остановили выполнение. Этот подход обеспечивает эффективное использование ресурсов, поскольку обработка событий происходит в фоновом режиме, быстро реагировать на изменения рынка. При последовательном выполнении все задачи выполняются одна за другой, в порядке их появления, часто это приводит к блокировке потока выполнения, особенно если отдельные задачи занимают много времени.
К недостатком асинхронной обработки событий можно отнести - сложность отладки, сложно отладить проблемы, связанные с событиями, поскольку они происходят асинхронно.
Не что не мешает регистрировать обработчик с управлением рисками, обработчик управлением позициями, стакана, чего угодно. Собрать полностью - Модель, ориентированною на события, обрабатывать большое количество одновременных событий без перегрузки системы. Помучившись один раз можно легко масштабироваться.
Код
coroutine.wrap(function() -- пример функции обратного вызова для отслеживания времени торгов
    while run do
        -- Получить текущее время торгов
        local trading_time = get_trading_time() 
        print('trading_time =',trading_time)

        -- Проверить, находится ли рынок в рабочее время
        if is_market_open(trading_time) then
            -- Перейти в режим торговли
            start_trading()
            
        else
            -- Перейти в режим ожидания торгов
            stop_trading()
        end

        -- Задержка перед следующим обновлением времени торгов
        coroutine.yield()
    end
end)()
coroutine.wrap(function() -- пример функции обратного вызова для обработки событий котировок акций
    while run do
        local quote = generate_quote() -- Получить котировку
        process_quote(quote) -- Обработать котировку
    end
end)()
Без ЦЕНЫЕ сделки, Кто то не верно предоставляет котировки, или перерисовка в QUIK
 
Цитата
Дмитрий написал:
Логика такая: берется график старого фьючерса GOLD-3.24, переименовывается в новый GOLD-6.24 и в нем начинаются накапливаться новые данные. Поэтому у вас на графике GOLD-6.24 отображаются сделки за вечерку 20.03 на данных от GOLD-3.24
Да же если Ваша логика верна, разве она отменяет тот факт, что квик формирует не верную информацию, делая подмену данных?
Без ЦЕНЫЕ сделки, Кто то не верно предоставляет котировки, или перерисовка в QUIK
 
Дмитрий,  Вы к разработке имеете какое то отношение? Ваша логика (если она в этой ситуации есть) в "пух и прах" разваливается о тот момент, что при загрузки терминала  
Цитата
VPM написал:
авто замена с GOLD-3.24 на GOLD-6.24  прошла 22.03.24г., ну по крайней мере был запрос и мое согласие
спрашивается, если уже ранее прошла замена, терминал зачем формирует и шлет повторные запросы?
Второе, я - пользователь и вообще не желаю вникать, что на что накладывается, а желаю получать достоверную информацию с биржи, и заявляю разработчикам QUIK о проблеме, проблема очень серьезная, не смотря на то что версия уже 11, а "воз и ныне там", и это как минимум предоставление не верной информации, я уже на этом форуме об этом заявлял. В конце концов есть уникальный идентификатор котировки это дата и время, так как квик транслирует временной массив.
Помогите новичку с индикаторами., Код индикаторов.
 
Aleksandr_1024, Не нужно ничего не куда вставлять, Вам нужно на этом форуме найти ссылку на индикаторы на писанные на луа от разработчиков квик скопировать ее и следовать инструкциям которых очень много на этом форуме, да и на других сайтах посвященных трейдингу. Удачи, ничего сложного нет, но разобраться нужно Вам самому.  
Без ЦЕНЫЕ сделки, Кто то не верно предоставляет котировки, или перерисовка в QUIK
 
Дмитрий,  авто замена с GOLD-3.24 на GOLD-6.24  прошла 22.03.24г., ну по крайней мере был запрос и мое согласие, да и без разницы что делал пользователь, Вопрос заключается, почему пропадают исторические данные? Почему QUIK перерисовывать те данные которые у него уже были?
Даже если пользователь в это время "стоял на голове", сто это меняет.
Без ЦЕНЫЕ сделки, Кто то не верно предоставляет котировки, или перерисовка в QUIK
 
Уважаемые разработчики, обратите внимание на ситуацию:
Не первый раз случается такая ситуация, на примере сделок от 20.03.24г. тикер GOLD - 6.24, открыл позицию в шорт цена 2233, терминал загружен 21.03.24г, отражает цену  которая не превышает 2185.
детально можно посмотреть в скринах.

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

Версия QUIK 11.1.1.11, В общем вся информация есть в скрине.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
----- lifo из двусвязной очереди и пример позволят вести себя как стек - обеспечивая LIFO-порядок.
Скрытый текст

Еще одна реализация стека, по сути это тоже самое что и в букваре только реализация в виде класса, просто удобней пользоваться., наследуется без проблем, легко дописать фифо. У себя делаю лифо  для контроля памяти, создавая динамические окна. Выкладываю может кому еще сгодится.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
nikolz написал:
Все, что Вы повторяете из прочитанных Вами книжек есть лишь пересказ чужих рассуждений. ------Возможно будет работать, а возможно и нет.-----Есть еще множество различных рассуждений в  подобных книжках.
Так  и я про это, очень много чего понаписано на тему трейдинга, полезного мало, вот и заостряю внимание на полезном на мой взгляд, рассуждаю о том что практикую, а цитирую для понимания вопроса.
Цитата
nikolz написал:
Было бы интересно увидеть результат применения ваших скриптов хотя бы на истории, которая уже есть в КВИКЕ.А написать что-то на луа ,да еще без тестов - это может любой начинающий.
Так я же говорю, что у меня  стадия разработки, довожу программу, вот тесты показали недостатки в управлении капиталом переделываю и некоторыми соображениями делюсь, вообще мои посты это последовательность разработки моей программы. Торговые стратегии еще даже не отлаживал, на кидал примеры, это собственно основное ради чего все делается.
К стати если не жалко поделитесь индикатором для вывода кривой Equity, наглядно а руки не доходят. Что касается вопроса писать на луа, это простой пример, почему удобно строить структуры, и ими оперировать, плюс не сколько простых формул.
Цитата
nikolz написал:
Покажите хотя бы какой-нибудь результат. Ну хотя бы советника , который будет иметь положительное мат ожидание сделок хотя бы на истории.-------------------Уверен, что не получится.  Можете доказать иное?
Ну Вы меня тут удивляете, Вы выкладываете картинки, где у Вас показан рост  кривой Equity, я не думаю что Вы не знаете как рассчитывается мат ожидание? Я лишь покажу как я это применяю, да и делал про это сообщения ранее.  У меня написан класс  local result={}; в нем определяю параметры необходимые для учета и анализа сделки, сделка здесь своя (т.е. закрытие или уменьшение позиции).
далее реализую метод (функцию)  function result:Evaluating_Trading_Systems(res) на вход которой, подаю массив res={} local symbol=res.id; local d=res.d;local t=res.t;local sW=res.w;local nW=res.nw;local sL=res.l; local nL=res.nl;  local Q = nW+nL; где nW,nL - количество выигрышных, проигрышных сделок; sW,sL - выигрыш, проигрыш в пиктах.
расчет 3 основных показателей:

Мат. Ожидание считаю по формуле: МО = (%прибыльных Х средняя прибыль) - (%убыточных Х средний убыток).
ПРОФИТ-ФАКТОР (profit factor) - отношение суммарного выигрыша от всех прибыльных сделок к суммарному проигрышу от всех убыточных. Имеет смысл  с реинвестированием.
Процент прибыльных сделок (Percent Winning Trades)  local pWT = Q~=0 and pWT = nW/Q or 0;

Это основные без которых не возможно спроектировать систему, остальные вспомогательные.

в роботе делаю вызов после каждой сделки, ну собственно про это уже писал  нет смысла повторяться.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
"на фига козе баян", Кто же не умеет считать среднее арифметическое и стандартное отклонение, это фундамент тех. анализа. А все дело в производных, в "побочных продуктах" как говорит автор, которые мы можем рассчитать определив оптимального f.

Заметил ошибку надо исправить строку local standard_deviation = math.sqrt(variance_HPR), т.е. перейти от дисперсии к отклонению.

И так правило номер два торгуем с левой стороны от оптимального f, в в теории конечно нужно на вершине, но на практике есть маржинальные требования. Что дает нам расчет побочных продуктов, прежде всего отвечает на вопрос, каким количеством эффективно нужно торговать, какое нужно количество сделок нужно для достижения цели, какой необходимо поддерживать депозит для эффективной торговли и много еще чего, кроме того сделка ка бы хеджируется, но просадки все рано могут быть значительно глубокими. Всего не возможно рассказать в рамках поста, добавлю лишь как я всем этим пользуюсь, рассчитываю 2 раза, в начале при проектировании сделок, затем по результатам моей ТС, анализирую и провожу корректировку.
Сейчас все приделываю под портфель, ввожу 3 стратегии управления, и здесь есть существенные отличия!
Дерзайте, всем хорошей торговли.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Пишу и тут же выкладываю проверяйте на ошибки
Код
-- Этот класс equation содержит функции для расчета среднего HPR, дисперсии HPR, средневзвешенного f и среднего геометрического.
-- Определение класса equation
equation = {}

-- Функция для расчета среднеарифметического АHPR, дисперсии SDHPR и средневзвешенного f
function equation.calculate_mean_and_variance_with_f(HPR_values, f_values)
    local n = #HPR_values
    local mean_HPR = 0
    local total_f = 0

    -- Расчет среднего HPR
    for i = 1, n do
        mean_HPR = mean_HPR + HPR_values[i]
        total_f = total_f + f_values[i]
    end
    mean_HPR = mean_HPR / n

    -- Расчет дисперсии HPR
    local sum_squared_diff = 0
    for i = 1, n do
        sum_squared_diff = sum_squared_diff + (HPR_values[i] - mean_HPR) * (HPR_values[i] - mean_HPR)
    end
    local variance_HPR = sum_squared_diff / n

    -- Подсчет средневзвешенного f
    local mean_weighted_f = total_f / n

    return mean_HPR, variance_HPR, mean_weighted_f
end

-- Функция для расчета среднего геометрического с учетом полученных значений AHPR и стандартного отклонения
function equation.calculate_geometric_mean(AHPR, standard_deviation)
    local geometric_mean = math.sqrt(AHPR^2 - standard_deviation^2)
    return geometric_mean
end

-- Пример использования класса equation
local HPR_values = {0.05, 0.03, 0.07, 0.01, 0.06}
local f_values = {0.1, 0.15, 0.2, 0.05, 0.1}

local calculator = equation
local mean_HPR, variance_HPR, mean_weighted_f = calculator.calculate_mean_and_variance_with_f(HPR_values, f_values)

print("Среднее HPR: " .. mean_HPR)
print("Дисперсия HPR: " .. variance_HPR)
print("Средневзвешенное f: " .. mean_weighted_f)

local AHPR = mean_HPR
local standard_deviation = variance_HPR
local geometric_mean = calculator.calculate_geometric_mean(AHPR, standard_deviation)
print("Среднее геометрическое: " .. geometric_mean)

Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Итак, условие первое, у нас должна быть торговая система с положительным мат. ожиданием (здесь торговая система - ТС, это наш свод правил, которыми руководствуемся в принятии торговых решений).  Для начала, ТС "от бек-тестили", в результате  получили какой то массив, тех самых HPR, создаем уравнение для нашей системы,   для чего находим 3 показателя среднего AHPR, дисперсии SDHPR и среднегеометрического GHPR.
Код
---- пример  расчета HPR (Holding Period Return):
--Эта функция принимает начальную цену актива, конечную цену актива и доход за период. Она вычисляет и возвращает показатель HPR (Holding Period Return) для данного периода владения.
function calculate_HPR(start_price, end_price, income)
    return ((end_price + income) / start_price) - 1
end

-- использования
local start_price = 100  -- Начальная цена актива
local end_price = 120    -- Конечная цена актива
local income = 5         -- Доход за период

local hpr = calculate_HPR(start_price, end_price, income)
print("HPR: " .. hpr)
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Свой подход я основываю на работах Ральфа Винcа. Ральф Винc, от управляющего (money manager) у известного трейдера Ларри Вильямса на знаменитом чемпионате, до профессионального управляющего фондом. Начиная обсуждение данной темы, не получится обойти основ на чем зиждется тема, по той причине что кто уже знаком с темой ничего нового я не скажу, а тем кто не знаком не обсудив основ ни чего не поймешь. Поэтому чуть чуть "от себя-тины", но в любом случае лучше познакомиться с работами автора, это 3 книги с изложением очень важного материала, а может и самого важного в трейдинге. Автор отвечает на такие вопросы как можно эффективно торговать и оставаться на плаву,  излагает свою методологию (я бы даже применил термин "разжевывает"), указывает на дорожку, по которой можно попасть к тем самым "2% трейдеров". Он вводит в оборот основное уравнение торговли, понятие оптимальная фракция, показатель HPR (Holding Period Return) измеряющий результат сделки (доходности) за период владения.
Заканчивая вступление добавлю лишь, насколько важно управление капиталом, вот от автора "Наше согласие или несогласие с этими закономерностями никак не отражается на том факте, что они властвуют над нами". Не до понимание вопросов управления может убить, самую шикарную торговую систему, и на оборот есть стратегии управления капиталом, которые вытягивают торговую систему с отрицательным мат. ожиданием (Но это не наш путь).  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Начиная переделку своей программы, (переходу от торговли конкретным инструментом к алгоритмической торговле портфелем), сильно не до оценил сложность такого подхода, но это в свою очередь заставило более глубже погрузиться в тематику. Заканчивая переделку, в плотную подошел к вопросу управления портфелем, позицией, в благодарность тем кто принимал участие в обсуждениях, с объяснениями, выступал со здоровой критикой, выкладывал примеры, публиковал открытый код, со своей стороны хочу показать несколько приемов по этой тематике, которые использую в своей программе.

Но прежде чем начать, пару мыслей вслух:
Часто на форуме обсуждается вопрос о не хватке времени, исполнения программ на lua, для себя не вижу задачи, где бы при торговли через сервер брокера, время исполнения основного цикла требовалось менее 1 секунды, да QUIK умеет работать с миллисекундами, но что толку если в терминале информация обновляется раз в секунду. Но даже при этом в своих постах, публиковал подход с которым можно подключаться к инфраструктуре биржи и проводить торговые операции со скоростью исполнения скрипта lua, без всяких тормозов, и зависания процессора.
Еще одна тема, это часто слышно в адрес lua, что с ним что то не так, не хочу погружаться в эти вопросы, скажу про то что мне нравится. Известно что lua - это язык сценариев, это его сильная сторона, поэтому писать, а за тем и исполнять код лучше на сильной стороне, а это таблица, из которых легко, красиво, просто и понятно строятся структуры, а при необходимости доводится и до объекта. Это все равно, что оперировать не отдельными буковками, а целыми предложениями, а лучше даже образами. Такой подход избовляет от использования повторного кода, здесь действует библейский принцип "по оброзу и подобию", что значительно упрощает не только создание программы, но и значительно улучшается чтение и понимание логике заложеной в алгоритме. Это всего лишь мои наблюдения, а применять или не применять решает каждый сам за себя.
Если бы я был архитектором QUIK, Что стоило бы изменить в QUIK по-крупному
 
Цитата
TGB написал:
2) Интерфейс  взаимодействия QUIK c Lua-скриптом пользователя, реализованный в виде коллбекков, предполагает многопоточный режим использования Lua,. порождающий неприятные проблемы параллельного программирования (для решения которых сами же разработчики предлагают использовать потокобезопасную очередь между коллбеками и потоком main). Мне представляется, что имеет смысл вместо коллбеков использовать активную очередь событий, При этом не требуется использовать Lua в многопоточном, редко используемом и не очень стабильном режиме. При этом не будет проблем с подключением новых версий Lua. Более того, скрипты пользователя будут выполняться несколько быстрее из-за отсутствия синхронизации, требуемой в многопоточном варианте использования  Lua.


TGB,  Не люблю высказываться на подобные темы, но ту Вы даже меня удивили. Мир стоит на пороге квантовых вычислений, а Вы предлагаете еще дальше откатиться в средние века. Создать "активную очередь событий" не знаю что Вы под этим понятием имеете ввиду, но очередь предполагает последовательное выполнение (вычисления) кода.  О какой же многопоточности речь идет, все коллбекки исполняются в основном потоке, асинхронность создается в момент срабатывания функций обратного вызова, т.е. вызвали что то сделали и снова последовательное выполнение. При этом Вы сами пишите отвечая nikolz,  "... в QUIK существует служебный, так называемый основной единственный поток, выполняющий то, что перечислено мною выше?", получается что нужно отказаться от отдельного потока main и выполнение main разместить в основном потоке , при этом создав "активную очередь событий".
Цитата
TGB написал:
В Новосибирске, когда то была хорошая школа IT-шников. И что-то, наверное, от нее осталось. Я надеюсь, что архитектором QUIK в текущий момент является один из выпускников этой школы.
Школа как была отличной, так и остается, и дело на мой взгляд не в программистах, а в том как управляется проект (в главном конструкторе). Даже пример этого форума показывает Нельзя отпускать программиста (понапишут такого), без  контроля инженера (следящего за прикладным характером задачи) .
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Всем добрый день!
Подошел у себя к встраиванию еще одного концепта - Конечный автомат (Finite State Machine, FSM) , точнее сказать он уже используется, так как на его прицепах построен фреймворк HackTrade,
я лишь описал таблицу, position и  таблицу инструкции для создания ордера, а также состояние самой торговой системы.

Кратко о чем речь,
"FSM - это абстрактная модель, которая описывает поведение системы с помощью конечного набора состояний, переходов между этими состояниями и действий, происходящих в ответ на эти переходы".
"FSM используется для моделирования и анализа различных систем, таких как программное обеспечение, коммуникационные протоколы, устройства управления и т. д. Он помогает инженерам и разработчикам понять и предсказать поведение системы в различных ситуациях, выявить возможные проблемы и оптимизировать работу системы."

Вот пример простого использования конечного автомата (FSM), для моделирования и анализа систем. Этот пример показывает, как можно использовать конечный автомат на Lua для моделирования системы с различными состояниями и переходами между ними.
Скрытый текст
Что изменилось в версии 11.1.1.11?
 
Nikolay,  Просматривая форум, обсуждение этой тематики можно найти, с самого момента появления lua в quik. В основном пишут те, кто хорошо разбирается в quik и lua. Одни и те же проблемы в течении ряда лет, практически не зависят, от версий quik или lua, не ужели не приводят к мысли, создать модуль, опубликовать его, обсудить, и забыть при использовании этого модуля про проблематику?
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Всем добрый день!
Проведённые тесты, показали необходимость модернизации в программе модуля - генератор сигналов. Переписал, сделал поступление сигналов в потоке от разных временных интервалов (разные ритмы). Технически, такой подход, позволяет более четко выделять несущею частоту сигнала, организационно просто выбираются правило на исполнение. Это в свою очередь повлекло переделку модулей учета позиций, учета результатов. Часть модулей, не просто таблица lua, а реализовано в виде ОПП. Ранее я касался этой темы, но остался главный вопрос. В каких случаях просто достаточно таблицы lua, а когда просто необходимо ОПП? Я о каком то принципе чтоб с одного разу понимать необходимость собирать ОПП. Перечитал на эту тему материалы вот понравилось https://habr.com/ru/articles/259265/ делюсь.
Перестал работать скрипт в 11.1.1.11
 
sandyman,  Вам просто нужно заменить unpack на table.unpack, это изменения в версии lua/
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Nikolay,  Понравилась Ваша реализация вот эта
Цитата
Nikolay написал:
Как и другие его циклические индикаторы  CyberCycle
У меня есть свои, но у Вас тут целая торговая стратеги, хочу попробовать в месте с индикатором модели рынка, посмотрю как будет, один из вариантов погоняю с нечеткой логикой. Супер спасибо!
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Чувак, да ты пойми, не каждому дано, кто то хороший математик, кто то физик, а чтоб торговать даже умным не нужно, быть достаточно удачно торговать! :smile:  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
Игорь М написал:
Чувак
Все супер, обучили, разжевали, просветили, все супер чувак, огромное спасибо.
Только пару ремарок.
1) Права и обязательство по договору и технологии применяемые для торговых операций, чуть чуть, ну совсем чуть чуть разные вещи! :smile:
2) Повод причина и следствие,  чуть чуть, ну совсем чуть чуть разные вещи! :smile:

А так все супер, обязуюсь все свое свободное время чувак, использовать на изучение предмета!
Цитата
Игорь М написал:
Вот вы поняли, например, кем и чем NG привязан? Или завтра гэп вниз на NG опять из-за действий какого-то вашего ММ произойдет?
А позвольте узнать ПРИЧИНУ? Заранее при много благодарен, чувак!
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
Nikolay написал:
Я такой индикатор писал  https://github.com/nick-nh/qlua/blob/master/corrCycle.lua Как и другие его циклические индикаторы  CyberCycle ,  CenterOfGravity ,  InstantaneousTrend ,  MESA
Ну нет это что то новое, я ранние Ваши работы видел, посмотрю внимательней.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
Владимир написал:
Весь этот маразм с "уровнями поддержки/сопротивления" действительно иногда работает, но только потому, что стадо баранов верит в эти бредни и ведёт себя так, как если бы они в действительности существовали.
Ну прямо прогресс какой то, теперь нужно назвать хоть одну причину почему они образуются, а программировать Вы правы не нужно, есть простые и более элегантные методы.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
Nikolay написал:
Но, как обычно, в голом виде - все это академические работы.
В статье на которую я делаю ссылку он приводит результаты трех подходов, и показывает результаты тестов, вполне коммерческие.
Я пробовал реализовать не четкий индикатор по аппроксимации синусоиды, на основе двух библиотек, но нейронная сеть странно себя ведет, просто интересен был результат, ну да ладно пока не до этого.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Nikolay,  Да Вы абсолютно правы, а Ваши работы я видел которые в открытом доступе, за что Вам отдельное спасибо!
В спектральном анализе у меня был небольшой практический опыт, и это как раз в 90х я тогда еще работал инженером, руководил технологическим бюро на крупном предприятии, и задачи на практике разбивались, о то что не хватало автоматизированных прикладных программ, слаба была интерпретация результатов обработки. ЕС 1841, операционная ДОС, виндос 4 что не вообразимо круто.
Если Вы Вы пример пример привели про нобелевских лауреатов, то там причина была мне помнится другая.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Ну а что мы делаем когда считаем средние с разными периодами,  период обратно пропорционален частоте, другими словами, задаем динамическое окно на разных частотах.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Nikolay,  Не совсем так,  идея применить преобразование Фурье к временному ряду, это просто один из методов, и в нем есть очевидные недоставки, один из них все тоже отставание.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Проблема этого "НО" заключается, в методах преобразования и вычислениях этой самой синусоиды, традиционные методы хорошо говорят что было, но принимать решения по ним уже поздно все уже случилось. Что предлагает автор, так как это движение по кругу (колебание), применить вместо синуса косинус (то есть сдвиг по фазе, в обиход вводится понятие фаза - частотные характеристики), таким образом достигается предсказательный характер индикатора, ну и обработка входящих данных методами фильтрации, что в разы убирает отставание сигналов от реального события.

Вот примерно основная идея, кому стало интересно лучше почитать автора.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Альтернативный подход предлагает John Ehlers в своих работах, на мой взгляд он наиболее интересен и заслуживает внимания, с точки зрения формализации, и превращение в стройные алгоритмы, но мало освещен, в нашем сегменте интернета, переводы на русский мне не попадались.
В двух словах суть, вспоминаем тригонометрию из школьного курса, единичный вектор вращаем против часовой стрелки, на конце которого закреплен карандаш и протягиваем. На выходе не что иное как временной ряд - синусоида, мах = 1, мин = -1, центр = 0, идеальный индикатор =1 - продать, =-1 - купить, более того ранее уже освещалось что в предельных точка находятся наиболее вероятный события, если бы не одно но.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Другое дело период здесь и кроется  «Ахиллесова пята».
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Владимир, Да еще как движется в канале. но Вы графиками не пользуетесь, поэтому этого не замечаете. Да и то что Вы называете свечей - это просто усреднённое значение за период. То что прячут за словом свеча (мне больше нравится бар, просто короче), подразумевает 5 значений за период.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Nikolay,   Вы описали классический традиционный подход, в данном вопросе, а слово "угадать" я вообще не применял, подход заключается не в игре угадай, а разложении временного ряда, на 3 компонента.
А временной ряд не всегда стохастичен, только что в своём примере, я это пытался донести, а установление тренда нам об этом и говорит, и отменяет всю случайность. Да и не утверждаю, что это просто, для меня это наиболее формализованный подход в волновой теории он мне понятен. Конечно не один мат. метод не работает на все случаи жизни, это второй момент, поэтому и важно найти ту грань, где нужно переключить торговлю на другую стратегию. А если бы было просто то математики зарабатывали свои состояния.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Вот принципиальная теоретическая модель, которую предлагаю рассмотреть:

Model = Trend + Cycle + Noice

Если в данной модели удален компонент Trend = 0, то модель выглядит так

Model = 0 + Cycle + Noice

Оставим пока в покое компонент Noice = 0, не "шумит" наш источник данных, идеален, ну или удалили компоненту шум. Модель можно записать следующим образом.

Model = 0 + Cycle + 0

То есть можно говорить о принятии решений, кода цена движется в канале с определенным периодом. Так как интересует торговля внутри дня, то длина выборок относительно не велика.
Когда строятся подобные модели, для того чтоб можно было их применять на практике, то проводятся, определенные мат. преобразования с данными (усреднение, сглаживание ...).
Мало, того что такой подход удаляет часть информации из источника, так еще и вводится отставание при определении интересующего события.
И что с этим делать?
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Владимир, В место такой красивой поэмы, Вы показали хоть один пример, того как нужно, Мне кажется Вы упускаете один важный момент, у Вас богатый опыт, видимо все перепробовали, но общаетесь Вы с первоклашками, да и те еще и первый не закончили (это я про себя), вот и получается общение выпускника школы с первоклашкой. Мне думается лучше простой пример.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Владимир,  Опять манипуляции, зачем же Вы несколько раз повторяете, одно и тоже, это видимо из области "глупость повторенная несколько раз, становится правдой". На поставленные Вам вопросы не отвечаете? Если Вы о принципе Оккам, то куда уже проще с нечеткой логикой, разве что создать огромную веревку из if elseif, но совсем не факт что это проще.
Относительно, нелепых вопросов, очень даже "лепые," четко сформулированы, ответы мне известны, поэтому не нужны, "разжёвывать" не собираюсь, кому нужны легко сам найдет ответы, и построит логические связи для получения главного ответа. Ну не всем дано, это к примеру, программисту с полувековым опытом, предложить проводить операцию на сердце, вот это нелепо. Да и не кого я неучу и да же не указываю, что делать и как делать. Стучать по клавишам не моя стихия, банально ищу короткий путь в своих пояснениях. На деюсь доступно объяснил.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
Владимир написал:
Старина Оккам был отнюдь не дурак.
Поясните о чем Вы?
А зачем нужна, очень даже ясна. В место четках Да/Нет вводится степень принадлежности, в зависимости от степени принадлежности делается четкий вывод, Ну к примеру купить не рабочим контрактом, а какую то часть и так далее.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Владимир,  Ну здесь с Вами и не поспоришь. Разве что удивляет вот этот момент
Цитата
Владимир написал:
В частности, я считаю, что нечёткая логика для задач торговли не нужна, если не сказать "вредна".
Я у себя сейчас встроил, и тестирую разные варианты пока относительно торговых стратегий (ТС), кому не знакома проблема, когда  сигнал определенный на пересечениях двух линий дергает туда сюда. Второе я писал, где еще хочу попробовать, ну к примеру поставить количество в зависимость от какого то алгоритма. Но в любом случае не понятно почему вредна?
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Владимир, Да. я не писатель не поэт, и уж точно снобизмом не страдаю! Обсуждаю ровно то, что можно программировать, не более. Высказываюсь для для тех кто умеет мыслить, анализировать и обсуждать, разные темы. Вы еще не догадываетесь, для Вас скажу, я еще задумал обсудить прогностические индикаторы, а "не дёрганье кота за хвост", туда и виду.  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Игорь М,  Последний раз, без вся кого ликбеза, пытаюсь Вам пояснить (это уже не однократно здесь озвучивалось и обсуждалось). Да услышит слышащей.

А дело вот в чем, я написал "про Ивана, а Вы мне втюхиваете про Болвана!" Но обо всем и по порядку.

2) Маркет мейкер - компания (или группа компаний) заключившая с биржей договор, одной из главных задач которого, является устранения меж биржевого дисбаланса в котировках.
1) Геп - сильное, мощное движение, когда сносится встречное предложение/спрос, заявки не попадают даже в стакан, продукт высокочастотной тарговли.
3) "Поводырь" - сленг, ведущий индикатор относительно которого принимаются торговые решения.
4) Высока частотная торговля, торговые операции Маркет мейкера или компаний разместивших свою инфраструктуру на бирже, обладающих алгоритмами позволяющими это делать.
Геп на открытие торгового дня, как правило продукт торговой деятельности маркет мейкера, решая предписанные ему задачи, вынужден набирать позицию по невыгодным ценам.
Вынужден по кругу своих обязанностей торговать большими объемами, большие объемы оставляют следы на графике и ленте. Применяемые технологии практически известны.
Строя гипотезы относительно действий ММ можно строить торговые стратегии. Ну а дальше сами.

Ни какой фундаментальной причины я не устанавливаю, более того мне на нее "наплевать", важно ценовое действие, и кто его в моей гипотезе осуществил.
День про который я написал, я торговал, и высказал свои эмоции, указав на интересные моменты, умеющие мыслить и анализировать обратят внимание, кому не интересно просто пропустят.
И это все просто, на деюсь так Вам будет понятно, и ни какой конспирологии! :smile:  
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Игорь М, Ну что не пост у Вас, то сплошная поэзия, вот мне нравится: "Не фантазируйте и не приписывайте другим то, чего они не писали". Или вот "Вы такую "классическую работу маркет-мейкера" можете увидеть в колебаниях деревьев на ветру. Это апофения называется.", а вот еще "Может тогда ваше детство закончится и сказки про всемогущих кукловодов, маркет-мейкеров и прочих оставят вас и этот форум.", или "пс. Забудьте вы про кукловодство маркет-мейкеров - это всё конспирология для недалёких." Ну не слог а песня! Восхищен!

Ну пожалуй вот это на мой вкус лучше всего "NG на МБ с утра, естественно, открывается гэпом, так как он привязан. Вот и всё." А позвольте узнать, у столь просвещённого, а кем и чем привязан???

Да и не вежливо оставлять вопросы без ответов, ну да ладно повторюсь. Причина послужившая поводом к развороту, даже фундаментальная, что из этого отменяет?

1) Институт маркет - мейкера на ММВБ?
2) или маркет - мейкеру не нужно обеспечивать ликвидность на своем рынке?
3) а может не нужно следить за меж рыночным спредом (арбитраж)?
4) или он умеет, без финансовых вложений двигать цену?

Мне не нужно себе ответьте.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Еще одна попытка вернуться к обсуждению статьи. "Функцию распределения вероятностей (PDF) можно позаимствовать из области статистики и использовать для изучения рыночных цен без тренда с целью определения торговых стратегий". Почему важно знать ФУНКЦИИ РАСПРЕДЕЛЕНИЯ ВЕРОЯТНОСТЕЙ(PDF),  при выборе стратегии?

Но в начале два слова, для общего понимания вопроса  как измеряется PDF.
График на плоскости, PDF делит события на диапазоны и распределяет эти события в этих диапазонах, каждый диапазон - ячейка содержит
• по оси Y - количество попаданий событий в диапазон;
• по оси X - сам диапазон классификатор.
Плотность распределения отвечает на вопрос, какая вероятность попаданий соответствует каждому диапазону событий.

Краткосрочную торговлю можно рассматривать, как торговлю в канале.

1) Один из методов определяя канала движения цены, устанавливается мак и мин значения за период и проводится нормировка текущей цены в этом канале (Stochastic).
нормировка удаляет тренд, а PDF стохастика, аналогичны распределениям синусоидальной волны. Наиболее вероятное событие на ходится в предельных отклонениях от центра.
Или говорит что достигнуто придельное отклонение скорость изменения мало меняется и поменяет знак, предсказывает разворот. Триггером здесь обычно выступает сам индикатор с прошлым значением.

2) Второй метод расчет RSI,  нормировка удаляет тренд, а PDF RSI, аналогичен нормальному распределению. Наиболее вероятное событие находится в центре.
Сильное отклонение говорит что скоро начнется возврат к среднему значению.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
nikolz,  Ну неужели и это нужно объяснять, ММ - это обобщающей термин, применяемый к сообществу  заключающего договора с биржами. Даже Вы можете стать, если будите соответствовать предъявляемым требованиям. Ну про это Вы и сами начитались. Я не слова не сказал про технологии они у все разные, но есть общие задачи, одну из которых Вы озвучиваете.

К стате, где Ваш пример про сети?
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Цитата
Nikolay написал:
И ничего Вам график не скажет по этому поводу, пока основная часть участников торгов не узнает об этом и начнется движение.
Вот это движение нам и скажет без указания причины, что идут распродажи, а поведение ММ в рынке ответит на вопрос насколько все серьезно. Я надеюсь, Вы же тоже не считаете что цены прыгают "по щучьему велению по моему хотению". А размер биржи определяет необходимые средства в распоряжении ММ для управления данным рынком, и они рассчитаются.
Дисциплина и это самое главное, можно чего не знать, но если дисциплины нет обязательно улетишь с рынка (и это я себе). Все знаем но на практике все происходит иначе. Вот и мне пример с NG запомнился, что нарушены были мною все допустимые риски. Результат на закрытие дня 16,5% к начальному капиталу, против 80% возможной потери этого капитала. И сколько раз я говорил что так делать не буду, не сосчитать, по этому мой метод алгоритмическая торговля с четко формализованными правилами и  с закрытыми глазами.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Nikolay,  Я Вас не совсем понял, кто на что жалуется, и причем тут интеллектуальные способности?
Цитата
Nikolay написал:
И жаловаться после всего этого на прокси, который, по сути, ни на что не влияет - это верх идиотизма.
Описанная Вами ситуация по нефти, понятно что при таком движении снесут любого ММ (ни каких средств, ни у кого не хватит) , и самое благоразумное что они могли сделать - это сбежать с рынка, что они и сделали.  При определенном опыте все читается с одного графика цены, а у нас кроме этого поступает еще масса информации, открытый интерес, количество контрактов, лента, активность...
Не переносить сделки значить не торговать (не принимать риск), но на все что мы можем повлиять, так это на степень принятого риска. Я писал себе алгоритм УПРАВЛЕНИЕ КАПИТАЛОМ ПО ВИНСУ отлично отвечает на данный вопрос, но одного знания мало, нужна дисциплина.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Но куда более важный момент хочется обсудить вот он:
Цитата
VPM написал:
Про функции распределения вероятностей я уже трогал чуть - чуть вопрос. Разные способы нормировки приводят к различным PDF, а значить  нужно строить стратегии с учетом этих функций. Классический пример это стохастик и RSI. Я выкладывал ссылку на небольшую статью John Ehlers, где он это прекрасно показал.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
Игорь М,  Спасибо, за отличный ликбез, сразу видно знание вопроса, прослеживается стройный, четкий анализ в установление причины для РАЗВОРОТА.
Только что это отменяет?

1) Институт маркет - мейкера на ММВБ?
2) или маркет - мейкеру не нужно обеспечивать ликвидность на своем рынке?
3) а может не нужно следить за меж рыночным спредом (арбитраж)?
4) или он умеет, без финансовых вложений двигать цену?

Вы не понимая сами,
Цитата
для недалёких
описали только что автоматическую, высокочастотную торговлю "с поводырем". А причины определяемые, как триггер, бывают разные.
Важно, что цену сильно опустили, и нужна была причина для разворота рынка. А я лишь указал на графике, где можно наблюдать классическую работу маркет - мейкера, я ее наблюдал на "ленте", увлекся, просто давненько не торговал такое сильное движение.
Система принятия решений и/или Нечеткая логика(FuzzyLogic), Нечеткая логика или Система принятия решений в трейдинге
 
nikolz,  Не понял, а что Вас не устраивает в LuaFuzzy простая библиотека, полностью написана на Lua, без всяких костылей, прекрасно работает на практике. Отвечает на вопрос о двойственности насколько объект принадлежит к то или иной области (например лингвистическая переменная тренд равна 0.65, а флет = 0.35 (в диапазоне 0/1)  ну и торгуем тренд.
Байесовский метод принятия решений не пользовался, если есть готовые библиотеки приведите, или хотя бы пример на луа.
Про функции распределения вероятностей я уже трогал чуть - чуть вопрос. Разные способы нормировки приводят к различным PDF, а значить  нужно строить стратегии с учетом этих функций. Классический пример это стохастик и RSI. Я выкладывал ссылку на небольшую статью John Ehlers, где он это прекрасно показал.
Страницы: Пред. 1 2 3 4 5 6 7 8 9 10 11 12 ... 24 След.
Наверх