Избранное трейдера максим

по

Camarilla Equation. Индикатор для QUIK. Часть 3.

    • 22 августа 2019, 12:29
    • |
    • XXM
  • Еще
Получил такое сообщение:

привет!
у меня в квике стояла камарилла аж с 2014 года, когда вы выложили здесь этот индикатор.
квик обновился до 8 и камарилла пропала.
это не исправить?

Глянул по тэгу https://smart-lab.ru/tag/Camarilla/ и вот они:
1. Camarilla Equation. Индикатор для QUIK.
2. Camarilla Equation. Индикатор для QUIK. Часть 2.

Выкладываю вариант, не зависящий от обновлений QUIK.

-- Camarilla.lua
Settings={
	Name = "Camarilla",
	period = 'D',
	line =
		{
			{Name = "S5", Color = RGB(255, 0, 0), Type = 1, Width = 2},
			{Name = "S4", Color = RGB(255, 165, 0), Type = 1, Width = 2},
			{Name = "S3", Color = RGB(255, 255, 0), Type = 1, Width = 2},
			{Name = "PP", Color = RGB(0, 255, 0), Type = 1, Width = 2},
			{Name = "R3", Color = RGB(0, 191, 255), Type = 1, Width = 2},
			{Name = "R4", Color = RGB(0, 0, 255), Type = 1, Width = 2},
			{Name = "R5", Color = RGB(139, 0, 255), Type = 1, Width = 2},
		}
}

local math_floor = math.floor
local levels = 0
local ydH, ydL, ydC, ydO = {},{},{},{}
local PP, R3, R4, R5 = 0,0,0,0
local S3, S4, S5 = 0,0,0
	local delta = 0
	local cl = 0
local predThisDay=0
local function dTs(t) return 100*(100*t.year+t.month)+t.day; end
local OldDay = ''	-- для выделения начала торгового дня

function Init ()
	local t=getDataSourceInfo()
	local tt = t.interval
	if tt == -3 then 
		message('Месячный график не обрабатывается.',1)
		return 
	end
	return 7
end

function OnCalculate (index)
	local time tt=T(index); ---время из свечи
	--local ThisDay=dTs(tt)	-- дата в формате yyyyMMdd
	local tDay=dTs(tt)	-- дата в формате yyyyMMdd
	local ThisDay = tDay
	if Settings.period == 'W' then
		ThisDay=tt.week_day	-- номер недели
	end
	if index == 1 then
		--message('First ThisDay = '..tostring(ThisDay),1)
		local t=getDataSourceInfo()
		--7.2.5 Функция предназначена для получения информации об источнике данных для индикатора.
		local scale = getSecurityInfo(t.class_code, t.sec_code).scale	--	NUMBER, Количество значащих цифр после запятой
		mul = 10^scale  -- возведение в степень
		local tt = t.interval
		if tt == -3 then tt = 'месяц' 
		elseif tt == -2 then tt = 'неделя'
		elseif tt == -1 then tt = 'день' 
		else
			tt = tt..' мин.'
		end
		--message(t.sec_code..'('..t.class_code..'), цифр после запятой: '..scale..', mul = '..mul..', дата = '..ThisDay,1)
		levels = levels + 1
		if ThisDay ~= OldDay then
			OldDay = ThisDay
		end	
		predThisDay = ThisDay
		--
		delta = H(index) - L(index)
		cl = C(index)
		R5 = (H(index) / L(index))*cl
		calcLevels(index)
		local per = 'daily'
		if Settings.period == 'W' then
			per = 'weekly'
		end
		message('Camarilla '..per..', Т = '..tt..', © xsharp.ru 20.06.2015', 1)
		return
	end
	if Settings.period == 'W' then
		if ThisDay < OldDay then	-- для неделек
			OldDay = OldDay + 1
			if OldDay ~= ThisDay then
				OldDay = ThisDay
			end
			levels = levels + 1
			delta = ydH[levels-1] - ydL[levels-1]
			cl = ydC[levels-1]
			R5 = (ydH[levels-1] / ydL[levels-1])*cl
			calcLevels(index)
			--if index<120 then
			--message('index= '..tostring(index)..', Смена недели: '..tostring(ThisDay)..', OldDay: '..tostring(OldDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1)
			--end
			predThisDay = ThisDay
		else
			if ThisDay ~=predThisDay then
				--message('index= '..tostring(index)..', ThisDay= '..tostring(ThisDay)..', predThisDay: '..tostring(predThisDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1)
				predThisDay = ThisDay
				OldDay = OldDay + 1
			end
			ThisDayF(index)
		end
	elseif Settings.period == 'D' then
		if ThisDay ~= OldDay then	-- для дневок
			OldDay = OldDay + 1
			if OldDay ~= ThisDay then
				OldDay = ThisDay
			end
			levels = levels + 1
			delta = ydH[levels-1] - ydL[levels-1]
			cl = ydC[levels-1]
			R5 = (ydH[levels-1] / ydL[levels-1])*cl
			calcLevels(index)
			--if index<120 then
			--message('index= '..tostring(index)..', Смена недели: '..tostring(ThisDay)..', OldDay: '..tostring(OldDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1)
			--end
			predThisDay = ThisDay
		else
			if ThisDay ~=predThisDay then
				--message('index= '..tostring(index)..', ThisDay= '..tostring(ThisDay)..', predThisDay: '..tostring(predThisDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1)
				predThisDay = ThisDay
				OldDay = OldDay + 1
			end
			ThisDayF(index)
		end
	elseif Settings.period == 'H4' then
		if ThisDay ~= OldDay then	-- для дневок
			OldDay = OldDay + 1
			if OldDay ~= ThisDay then
				OldDay = ThisDay
			end
			levels = levels + 1
			delta = ydH[levels-1] - ydL[levels-1]
			cl = ydC[levels-1]
			R5 = (ydH[levels-1] / ydL[levels-1])*cl
			calcLevels(index)
			--if index<120 then
			--message('index= '..tostring(index)..', Смена недели: '..tostring(ThisDay)..', OldDay: '..tostring(OldDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1)
			--end
			predThisDay = ThisDay
		else
			if ThisDay ~=predThisDay then
				--message('index= '..tostring(index)..', ThisDay= '..tostring(ThisDay)..', predThisDay: '..tostring(predThisDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1)
				predThisDay = ThisDay
				OldDay = OldDay + 1
			end
			ThisDayF(index)
		end
	end
	return S5, S4, S3, cl, R3, R4, R5
end

function round(value)
	return math_floor(value*mul + 0.5) / mul
end

function ThisDayF(index)
	ydC[levels] = C(index)
	if H(index) > ydH[levels] then
		ydH[levels] = H(index)
	end
	if L(index) < ydL[levels] then
		ydL[levels] = L(index)
	end
end

function calcLevels(index)
	ydO[levels] = O(index)
	ydH[levels] = H(index)
	ydL[levels] = L(index)
	ydC[levels] = C(index)
	--
	R3 = cl + delta * 1.1/4
	R4 = cl + delta * 1.1/2
	--
	S3 = cl - delta * 1.1/4
	S4 = cl - delta * 1.1/2
	S5 = cl - (R5-cl)
	--
	R5 = round(R5)
	R4 = round(R4)
	R3 = round(R3)
	S3 = round(S3)
	S4 = round(S4)
	S5 = round(S5)
end
  • обсудить на форуме:
  • QUIK

Торговая система. Мои критерии выбора

"Если хочешь зарабатывать — лучше строить торговые системы, а не прогнозы". Тимофей Мартынов.


Здравствуйте, дамы и господа!

Каким же требованиям должна отвечать торговая система (далее – ТС)? Напомню, что бессистемная, основанная на субъективных оценках торговля это игра с отрицательным математическим ожиданием выигрыша и потеря денег при использовании такого подхода – вопрос времени и количества совершенных сделок (смотрите статью "Опыт — мудрость глупцов!").

1. ТС должна быть алгоритмизирована в виде торгового робота – только такой подход дает возможность проверить гипотезу о поведении котировки, заложенную в ТС, смоделировав сделки по правилам ТС с использованием известной истории изменения котировок на длительных временных интервалах, включающих различные рыночные ситуации (продолжительные тренды, флэтовые периоды, резкие (новостные) изменения и пр.) Тестирование ТС торговлей в реальном времени практически неприменимо, так как из-за бесконечной вариативности торговых систем может просто не хватить жизни для проверки достаточного их количества, а действительно прибыльная ТС — золотой самородок в куче пустой породы. Кроме того, серия тестов на истории с различными параметрами ТС позволяет найти оптимальные их значения для различных финансовых инструментов, например, расстояния до уровней стоп-лосса и тейк-профита для инструментов с различной волатильностью.



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

Таблицы Google с кучей полезных формул. Часть 2: S&P500! Таблица по ММВБ - в открытом доступе.

А вот и табличка по S&P500!

https://docs.google.com/spreadsheets/d/11epplwQPMo2cLZSFLD_G7dXBuV6eX01-66TJZpK4dBA/edit?usp=sharing

Первым делом, делаем свою собственную копию: «Файл» -> «Создать копию».

1. Это лайт-версия: аналогично на странице Main – в зеленое поле вписывается целевая сумма в $.

Чуть ниже вносятся только тикеры и только количество купленных уже акций. Данные можно скопировать из каких-то своих таблиц, будь то Excel или Google-таблица (можно скачать брокерский отчет в личном кабинете брокера в формате Excel), а можно просто вбить вручную.

Таблицы Google с кучей полезных формул. Часть 2: S&P500! Таблица по ММВБ - в открытом доступе.


2. На вкладке “S&P500” автоматически проверяется соответствие вбитых вами тикеров с существующими, и расставляются купленные акции в правильные поля. Если какая-то компания становится в индексе выше или ниже (такое происходит почти каждый день, особенно на дне индекса), цифры автоматически следуют за тикером, ничего корректировать не надо. Поля В, С, D, E загружаются автоматически и обновляются каждый день. Поля G, H, I, J, AB загружаются автоматически и обновляются каждые 20-30 минут. Поля K, O, P, Q от того, какую сумму вы вбили в «Цель (капитал)».  Поля R, S, T зависят от того, какие тикеры вы вбили и сколько купленных акций вписали. Поля U, V, W, X несут информацию о дивидендах и обновляются 1-2 раза в неделю. Поле «Кризис-радар» вставлено просто так, в развлекательных целях, читайте пометку (наведите на черный уголок над надписью «Кризис-радар»). На этой вкладке вообще ничего редактировать не нужно.



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

PRObondsмонитор. Доходности ОФЗ, субъектов федерации, корпоратов, ВДО

PRObondsмонитор. Доходности ОФЗ, субъектов федерации, корпоратов, ВДО

ОФЗ. Или рублевая ключевая ставка завышена, или завышены цены ОФЗ. Взгляните таблицу: даже пятилетние бумаги торгуются с доходностями ниже ключевого уровня 7,25%. Облигации учитывают уже не только последнее, но и предстоящие понижения ставки. Произойдут ли эти понижения, покажет будущее. Факт в том, что рынок ОФЗ очень оптимистичен. Последний раз сопоставимый оптимизм наблюдался в начале 2018 года. Тогда за ним последовала жесткая коррекция. Сейчас, возможно, ситуация не настолько тревожна. На диаграмме хорошо видно снижение доходностей в первую очередь «короткого конца». В 2018-м активнее снижались доходности длинных бумаг. И все же, когда половина ликвидных выпусков торгуется заметно ниже ключевой ставки, как минимум, о потенциале роста рынка и цен говорить уже поздно.  


PRObondsмонитор. Доходности ОФЗ, субъектов федерации, корпоратов, ВДО

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

Отбор недооцененных акций

Добрый день, Господа!

Хочу поделиться с вами проделанной мною работой на тему отбора недооцененных акций. Методика отбора всем известная – стоимостная и не учитывающая дивидендную политику. Лично у меня нет времени гоняться за новостями и дивидендами.

Данные из отчетностей за последние 5 лет я свёл в таблицу Excel, в которой очень удобно делать выборки и сортировки.

Из отчетностей я брал только: количество акций, активы, обязательства, капитал, выручка, чистая прибыль. С помощью полученных данных получил капитализацию, коэффициент закредитованности и мультипликаторы Р/Е, Р/В. Таблицу буду дорабатывать, но костяк уже сформирован.

Да, и Реальная цена акции рассчитана по формуле Капитал/Кол-во акций, а не Активы/Кол-во акций. ИМХО только капитал более-менее говорит о реальной стоимости компании.

Сортировку сделал следующую:

— Оставил только компании с размером активов свыше 10 млрд. руб.;

— Убрал все компании, получившие хоть раз за 5 лет убыток;



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

мысли, мысли

Сегодня бегал в парке и здоровался со всеми кого встретил на пути. Обожаю парк утром, он отрезвляет!
Люди у нас хмурые, все делают серьезные, озабоченные лица. Но как только сказал «Здравствуйте», «Доброе утро» сразу преображаются. Особенно люди занимающиеся спортом. Всем нам необходимо хорошее настроение, так почему бы не начать день с простого приветствия!
      Мне интересно почему у нас люди не могут смотреть в глаза. Глаза ведь зеркало души, так почему же люди в основном так пытаются не показывать это зеркало? Я живу в маленьком городе, может это у нас, Москва и другие мегаполисы наверно меняют людей очень сильно и все становятся прямо-сквозь-смотрящими.
      Прошлая неделя выдалась хорошей, круто торгонул Газпром. Все-таки дисциплина — самое верное решение. Нужно стать как машина. А для этого нужно победить свое утро. Слушал Мел Роббинс, где она говорит про правила 5 секунд, про рептильный мозг. Оказывается нужно с утра как только встал разогнать свой рептильный мозг. Он понимает только движения, ритуалы и т д. Бег и занятие спортом — ритуал? Конечно. Если победить свое утро, заставить тело делать вещи которые не любишь, потом весь день проходит как по маслу. Легче концентрироваться, заниматься планированием и вообще дисциплинировать себя. Заметил также, что если чередуешь виды занятий утром (бег/спортзал/бассейн), то разнообразие помогает открываться восприятию этого мира. И тестостерон так и зашкаливает! Делаю уже второй месяц и вижу хорошие результаты. Никогда не любил статистику, но даже для себя стал вести всего и вся. Вся стена расклеена разными показателями. 

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

Честно о трейдинге или СОТ (ОИ) на Алросу - потенциальный кратковременный разворот.

Добрый день друзья!
Я всегда вас рад видеть)))


Как и обещал в прошлом посте, пишу про "Бонус"!

СОТ (ОИ) — это открытый интерес, открытые позиции участников рынка: Физ. лиц и юр. лиц.


19.07.2019г. (пятница).

Фьючерсный контракт на обыкновенные акции АК «АЛРОСА» (ПАО)

Честно о трейдинге или СОТ (ОИ) на Алросу - потенциальный кратковременный разворот.

Развороты на рынке происходят при экстремальных значениях от 90% и выше.

В данное время СОТ составляет 93,75% коротких позиций у российских юридических лиц.
В ближайшие дни юр. лица будут сокращать короткие позиции и наращивать длинные против физ. лиц.
На моей памяти максимум было 98% коротких позиций, на следующий день был V — образный разворот с мощным импульсом вверх.

Но… Одним из ключевых определений в процессе анализа отчета о сделках крупных трейдеров является нетто-позиция. Нетто-позиция – это разница между открытыми длинными и короткими позициями (на повышение и на понижение) обеих групп.

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

Покупка ФСК ЕЭС

«Федера́льная сетева́я компа́ния» — российская энергетическая компания, основным видом деятельности которой является передача электроэнергии по Единой национальной электрической сети России.
Первое что мне бросилось в глаза в этой компании это технические моменты, поэтому начнем с них а фундаментал после.
С начала года компания демонстрировала восходящие тренд, сейчас по нему идет коррекция которая достигла уровня линии тренда.
Про то как заходить в позицию, покупаем частями по мере роста цены наращивая позицию пока не достигнете нужного вам объема.
Закрывать больше половины позиции, либо после прохождения половины движения, либо по возможному годовому колебанию цены 0,2296  (коричневая линия )
Покупка ФСК ЕЭС
Ну а глобальная цель это конечно балансовая стоимость 0,6655 (красная линия )
Покупка ФСК ЕЭС

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

ФСК ЕЭС - покупка - Церих

Горизонт: 3 мес. 
Рекомендация: Покупать 
Дата рекомендации: 16 июля 2019 
Цена открытия позиции: 0.178 
Целевая цена:0.195 

Дивидендные отсечки опускают вниз спотовые индексы фондового рынка, создавая умеренно негативное настроение на рынке. Особенно сильным ожидается дивидендное проседание индексов после 16 июля в связи с отсечками наиболее капитализированных акций. В таких условиях труднее проходят отскоки и выкупы сильно подешевевших бумаг. Так, бумаги ФСК ЕЭС после даты отсечки цены акций опустились уже ниже естественного пост дивидендного гепа. В такие периоды вспоминают об имеющихся трудностях компании, ее высоких инвестиционных программах. 

Цены акций уже откатили вниз половину роста цены в 2019 году. Если достигнутый уровень поддержки не устоит, то тогда цены двинутся в район 0,17 или даже 0,165 рублей за акцию. Однако помним о долгосрочной фундаментальной привлекательности акций компании, которая входит в базовую основу инфраструктуры страны. В последние годы компания регулярно выплачивает дивиденды, которые (по текущим ценам) обеспечивают порядка 9% дивидендной доходности. А результаты по итогам 2016 года показывают ориентир возможного роста прибыли в будущем. Вместе с наблюдающимся стремлением государственных компаний к целевым показателям выплаты 50% чистой прибыли это должно дать долгосрочный тренд на увеличение дивидендных выплат. 

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

Коэффициент P/E простыми словами.

Мультипликатор цена чистая прибыль позволяет оценить перспективность покупки акций различных компаний для получения прибыли в будущем. Смысл коэффициента заключается в том, сколько денег инвесторы готовы платить сегодня  на каждый доллар (рубль, евро) получаемой прибыли завтра. Если по простому, то коэффициент P/E показывают за сколько лет окупятся ваши вложения в акции компаний. Рассчитывается значение P/E как отношение текущей рыночной стоимости компании к ее чистой прибыли.
P/E = Цена (Price) / Чистая прибыль (Earnings Ratio)
Обратное значение коэффициента P/E показывает доходность в процентах — 1 / (P/E) или E/P
Для чего нужен мультипликатор Р/Е

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

Допустим у вас есть деньги и вы хотите купить квартиру (или несколько) для сдачи в аренду. Есть вариант квартиры с большой площадью стоимостью 100 000 долларов. Также можно на эти деньги купить 2 квартиры поменьше, по 50 тысяч каждая. Что же выбрать?



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

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