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

по

Робот Помогатор

    • 19 февраля 2018, 10:09
    • |
    • Albus
  • Еще
Это не торговый робот, а аналитический. Первую его версию я уже выкладывал здесь
Робот Помогатор
Робот предназначен для долгосрочных фундаментальных инвесторов. Это попытка подружить Уоррена Баффета с техническим анализом.
Робот анализирует отраслевые индексы и все входящие в них акции. В обойме робота 91 инструмент, в том числе Индекс ММВБ, РТС и три валюты: доллар-рубль, евро-рубль, евро-доллар.
---
В основе робота две скользящие средние:
1. Мувинг с долгим периодом 52 недели (год)
2. Мувинг с коротким периодом 13 недель (квартал)
Робот Помогатор

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

Автологин в QUIK (на Lua).

    • 12 января 2018, 17:57
    • |
    • XXM
  • Еще

Узнал, что продается робот на 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  
  • обсудить на форуме:
  • QUIK

Грааль существует

Все в формуле
Грааль существует
отсюда.

А теперь от слов к делу:
1) значение показателя должно быть как можно больше. этого можно добиться увеличением числителя и уменьшением знаменателя.
2) числитель мы увеличиваем только тогда, когда выбираем самое «чистое» движение, т.е. среднее значение приращения цены в сделке у нас как можно больше по отношению к среднему приращению цены вне сделки. т.е. мы вырезаем самый жир из рынка.
3) знаменатель мы уменьшаем тогда, когда уменьшаем подкоренное выражение, а именно его первую составляющую, которая отвечает за среднеквадратическое отклонение приращений цены в сделке (на это мы можем влиять, а 2я составляющая это рынок). т.е. опять, чем чище движение мы берем, тем лучше. тем неслучайнее наш результат.
4) естественно чем больше у нас сделок в выборке самой торговой системы и стабильнее среднеквадратическое отклонение, тем лучше. на длительном промежутке времени у нас наше преимущество должно оставаться. а не теряться через какое-то время и как следствие этого происходит ухудшение среднеквадратического отклонения и падает итоговый показатель.

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

Анализатор спреда (спот-фьючерс) для QUIK.

В свое время у меня была задумка — посмотреть какой в реальности (включая комиссии) спред между спотом и фьючерсом и стОит ли его торговать. Так как, ни С#, ни Lua я, пока, не изучил, то пришлось писАть на Qpile…

Торговый функционал в скрипте не прописывал, поэтому его можно использовать только, как анализатор.

Кому надо – забирайте, так как я решил для себя дальше эту тему не развивать (по крайней мере пока)…

Выглядит интерфейс вот так:

Анализатор спреда (спот-фьючерс) для QUIK.

Особенности:

— текущий фьючерс определяется автоматически, в день экспирации автоматически переключается на новый;

— перед использованием надо указать папку в настройках пользователя для расчетов;

— в скобках отражается средний процент за последние 500 замеров для объективности расчетов (цифру можно менять в настройках пользователя);



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

Новогодний подарок тем, кому он нужен - СКОРО!

    • 19 декабря 2017, 03:27
    • |
    • pmus
  • Еще
Друзья! Есть отличные новости. Я долго думал, писать или нет, но теперь готов признаться, что я в настоящий момент принял приглашение от одного очень симпатичного брокерского, инвестиционного и финансового холдинга и ныне тружусь в славном городе Санкт-Петербурге над не менее славными проектами.

Конечно, лично для меня многое изменилось: я перешел на другой уровень и смотрю на рынок как корпоративный трейдер-программист, а не как физлицо-одиночка.

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

Но мы-то знаем....

Нет, ребята. Python не заточен лишь только под создание веб-сайтов или скриптов, иначе его бы не включали в каждую сборку Линукса!

Я лично убедился в том, что Python дает простор для создания почти что чего угодно, за сравнительно короткое время и с огромными возможностями, особенно для обработки данных в таких организациях, как NASA, Google, CERN, IBM… (и

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

Quik. Индикатор корреляции

    • 02 ноября 2017, 16:21
    • |
    • Karim
  • Еще
Написал на досуге по просьбе одного из участников смартлаба индикатор корреляции.
Индикатор простенький, считает коэффициент корреляции Пирсона
для двух выбранных инструментов на заданном таймфрейме.
Выкладываю исходный код. Может кому то пригодится.

Settings= 
{ 
Name = "Piton", 
N = 100,
legend = "price2",
line = 
	{ 
		{ Name = "Sint", 
		  Color = RGB(0, 132, 0), 
		  Type = TYPE_LINE, 
		  Width = 1 
		}		
	} 
} 

function Init() 
return 1
end 

Candles = {};


function OnCalculate(index) 
	local numCandles = getNumCandles(Settings.legend);
	if index <= Settings.N or numCandles <= Settings.N then
		return nil;
	end
	
	Candles, n, _ = getCandlesByIndex(Settings.legend, 0, index - Settings.N, Settings.N);
	if n ~= Settings.N then
        return nil;
    end
	
	-- Предварительный расчет
	sum1, sum2, sum3 = advancePaynemt(index);
	
	-- расчет коэффициента корреляции Пирсона
	r = sum3/math.sqrt(sum1*sum2);
	
	return r;
end

--  Предварительный расчет
----------------------------------------
function advancePaynemt(index)	
	local sum1 = 0;
	local sum2 = 0;	
	local sum3 = 0;
	local j    = 0;
	
	--  Вычислить среднее арифметическое
	for i=index - Settings.N + 1, index, 1 do
		sum1 = sum1 + C(i);			
		sum2 = sum2 + Candles[j].close;
		j = j + 1;
	end
	aver1 = sum1/Settings.N;
	aver2 = sum2/Settings.N;
	
	-- Вычислить сумму квадратов отклонений
	sum1 = 0;
	sum2 = 0;
	j 	 = 0;
	for i=index - Settings.N+1, index, 1 do
		sum1 = sum1 + math.pow(C(i) - aver1, 2);
		sum2 = sum2 + math.pow(Candles[j].close - aver2, 2);
		j = j + 1;
	end
	
	--  Вычислить сумму произведений разности
	j=0;
	for i=index - Settings.N+1, index, 1 do
		sum3 = sum3 + (aver1 - C(i))*(aver2 - Candles[j].close);
		j = j + 1;
	end
	
	return sum1, sum2, sum3;
end

Как запустить и настроить:


Архив исходника на QLua: https://yadi.sk/d/OxDvAekV3PLn2z
  • обсудить на форуме:
  • QUIK

Опционы "с нуля". Часть 1-я. Занудная. Рисуем таблички.

Нельзя торговать, не видя перед мордой всего.

     Начинаю плавно выкидывать то, что ПРИГОДИТСЯ ВСЕМ!

     Таблички — их три. Прошу желающих — скопировать с большой точностью, ибо дальше все расчёты от них пойдут.
      Не настаиваю ни на чём. Просто дальше пойдут эксельные файлы, котороые любой желающий сможет получить. Забе
сплатьно. Затак. А тама — идеология!

      Итак, рисуем три  таблички. Первая - 

в квике — система. Информация по опционам. Создать.

     Это будет «таблица параметров опционов». Обращаю внимание на размер — 36 строк, или 18 страйков. Всем всё понятно. Зачем и почему — позжее. Нижее.
     Итак, определяем значимые поля — они нам пригодятся!
     ВНИМАНИЕ — все данные для расчётов будут браться из этой таблицы. Воспроизведите её!

Опционы "с нуля". Часть 1-я. Занудная. Рисуем таблички.
     Напоминаю, я пошагово

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

ИНДИКАТОР ОТКРЫТЫХ ПОЗИЦИЙ ФИЗИЧЕСКИМИ И ЮРИДИЧЕСКИМИ ЛИЦАМИ

Комплект индикаторов из серии «черпаем издалека и намазываем на график».

 

Сайт московской биржи по окончании торгов приводит данные об открытых позициях на срочном рынке. Эти данные содержат информацию в следующих разрезах:

  • типе владельца позиции (физическое или юридическое лицо),
  • типе позиции (короткая или длинная)
  • размере позиции в контрактах
  • изменениям по отношению в предыдущему дню (в количестве контрактов и процентах)

 

Эта информация является официальной. Она не всегда совпадает с количеством открытых позиций, которые показывает терминал Quik. Вернее она всегда показывает немного больше открытых позиций, чем терминал. Как я понимаю, дело во внебиржевых сделках, которые в терминал не попадают.

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



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

Это близко и мне

    • 02 августа 2017, 10:39
    • |
    • cerenc
  • Еще

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

  1. «По      мере взросления, вы узнаете, что одна рука нужна вам, чтобы помогать себе,      а вторая — помогать другим», Сэм Левенсон.
  2. Я перестала делиться знаниями бесплатно.… вы      хотите получить мою экспертизу бесплатно, даже не заплатив за мой чай! Это      неприемлемо. Если они не считают, что мое время имеет ценность, то у меня      на них нет времени! Сегодня в ответ на такие приглашения я просто называю      свою почасовую ставку.
  3. Помогайте только тем, кто этого достоин. И лучше начните      с себя. Иногда приходится быть эгоистом и ставить собственные интересы в      приоритет. Игнорируйте образ жизни, который общество пытается вам      навязать.
  4. Самый простой способ превратить друга во врага —      дать совет, который он не хочет слышать. Когда я предлагаю кому-то помощь,      я реально хочу помочь. Но часто люди не готовы ее принять. Это нормально.      На перемены нужно время, и люди не всегда хотят что-то менять. Не стоит      давать советы, если люди к ним не готовы. Однажды они могут прийти и      сказать, что в их неудачах виноваты вы с вашими советами. Я перестала      помогать людям, которые не хотят, чтобы я им помогала. Меньше драм, больше      времени на себя.
  5. Перестаньте помогать, если не можете помочь на 100%.      Это самое критичное. Ни в коем случае нельзя предлагать кому-то помощь,      если вы не готовы ее оказать. Я так часто это делала и до сих пор жалею. Если      у вас недостаточно времени или навыков, чтобы помочь человеку, вы скорее      навредите ему.


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

Новый курс швейцарского франка

    • 11 июля 2017, 18:10
    • |
    • Zmey
  • Еще
Оригинал: http://zmey.club/opinion/148-novyy-kurs-shveycarskogo-franka.html

По швейцарской валюте, я полагаю, зарождается мощный тренд. Эпоха нулевых ставок по всему миру подходит к концу, а это значит, что франк снова станет ключевой валютой фондирования и тогда, рано или поздно, он возвратится на уровни десятилетней давности. Сейчас швейцарская валюта чудовищно дорогая; потенциал её падения составляет порядка 50%, хотя это, разумеется, не за один год.
Новый курс швейцарского франка
Рисунок 1 — график EURCHF и его прогноз (синяя линия).
Смотрите на кросс Евро-франк (рисунок 1). Устойчивое падение с 2007-го года во многом происходило из-за того, что Евро теснил швейцарца в качестве источника керри-трейд, однако в последние 2 года, судя по упавшей почти до нуля волатильности, этот процесс прекратился — все швейцарские капиталы вернулись домой, так что топлива для роста у франка физически больше нет. Сейчас EURCHF пытается поднять голову. Волатильность возвращается и это признак, что тренд повернул вспять.

График USDCHF (рисунок 2) только подтверждает этот расклад. Сжатие волатильности, которое длится аж с 2012-го года, судя по геометрии образующих, также подходит к своему логическому концу. Выход из консолидации вниз по уже указанным обстоятельствам представляется ложным и, если это окажется действительно так, то мы получим лишнее доказательство бычьего настроя в паре. Проход уровня 1.04 будет подтверждением, что восходящий тренд с первой целью около 1.70 уже начался.

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

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