Избранное трейдера Нечто

по

Индикатор наклонных уровней

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

Индикатор наклонных уровней

--[[
параметры: 
Procent - процент зигзага 
--]]
Settings={
Name="ZIGZAGPROF",
Procent=1,
    line=                                     
                {  
					{  
                        Name = "cur1",
                        Type =TYPE_LINE,
                        Width = 2,
                        Color = RGB(0,0, 0)
                    },
                    {  
                        Name = "cur2",
                        Type =TYPE_LINE,
                        Width = 2,
                        Color = RGB(0,0, 255)
                    }							
                }
}

function Init()
  
  y1 = nil
  y2 = nil
  x1 = 1
  x2 = 1
    
  return 1
  
end

function OnCalculate(index)

  de = Settings.Procent
  
  delt = 0.01

  vl = C(index)
  if index == 1 then 
	y1 = vl
    y2 = vl
  else   
	  if C(index) > y1*(1+de/100) and y1 < y2 then 
	    x2 = x1
	    y2 = y1	
	    x1 = index 
	    y1 = C(index)	        
	  end 	
	  if C(index) > y1 and C(index) > y2 then 
	    x1 = index 
	    y1 = C(index)	  			  
	  end 
	  	  		
	  if C(index) < y1*(1-de/100) and y1 > y2 then 
	    x2 = x1
	    y2 = y1
	    x1 = index 
	    y1 = C(index)  		
	  end 	
	  if C(index) < y1 and C(index) < y2 then 
	    x1 = index 
	    y1 = C(index)	  			  
	  end 	  	  		
	end 	
  
  if x1 ~= index then 
    curfrom = x1
	curto = index
  else 
    curfrom = x2
	curto = x1
  end 
 
 --[[
  if curto ~= curfrom and curfrom ~= nil and curto ~= nil then 
    if C(curto) ~= nil and C(curfrom) ~= nil then 
      k = (C(curto)- C(curfrom))/(curto- curfrom)  
      for i = curfrom, index  do
        curv = i*k + C(curto) - curto*k  		          
	    SetValue(i, 1, curv)
      end   	
	end 
  end
--]]
    
    lev = nil
	if x1 ~= x2 then  
     
	
	k = (C(x1)- C(x2))/(x1- x2)    
	maxd = 0
    for i = x2, x1  do
      
	  lev = i*k + C(x1) - x1*k  		
	  
	  if  C(x2) > C(x1) and lev <= H(i) 
	  then 
	    if maxd < H(i) - lev  then 
          maxd = H(i) - lev 
		end
        --maxd = 0.5		
      end 
	  
      if  C(x2) < C(x1) and lev >= L(i) 
	  then 
	    if maxd > L(i) - lev  then 
          maxd = L(i) - lev
		end 
		--maxd = -0.5
      end 	  
	  
    end   	
      
    lev = nil 
    --[[if x1 < index 
	  and 
	  (
	  C(x2) > C(x1) and C(x1) < C(index) 
      or 
      C(x2) < C(x1) and C(x1) > C(index) 	  
	 )
	then --]]
      lev = 
	    index*k + C(x1) - x1*k + 
		maxd
	--end   
    
	  
	  
	--[[  
	
	map = 10
	lev = 0
	if index-map+1 > 0 then 
      for i = index-map+1, index  do
        lev = lev + C(i)
      end   		
	  lev = lev/map
	  ma = lev
	end
	
	map = 30
	lev2 = 0
	if index-map+1 > 0 then 
      for i = index-map+1, index  do
        lev2 = lev2 + C(i)
      end   		
	  lev2 = lev2/map
	  ma2 = lev2
	end	

	
	if 
	  C(x2) > C(x1) and C(x1) < C(index) and C(index) > lev and C(index) - C(x1) > C(index)*delt
	  or 
	  C(x2) > C(x1) and C(x1) < C(index) and C(index) > lev2 
	then 
	  lev = C(x1)--*(1-delt)
	  prev = lev        
	else  	
	  if 
	    C(x2) < C(x1) and C(x1) > C(index) and C(index) < lev and C(x1) - C(index) > C(index)*delt
	    or
	    C(x2) < C(x1) and C(x1) > C(index) and C(index) < lev2 
	  then 
	    lev = C(x1)--*(1+delt)
	    prev = lev
	  else
        lev = lev2  
	  end		
    end	

	if 
	  C(x1) > C(x2) and ( lev < C(index) or prev == C(x2) )
	then 
	  lev = C(x2)--*(1+delt)
	  prev = lev
	end
	
	if
	  C(x1) < C(x2) and ( lev > C(index) or prev == C(x2) )
	then 
	  lev = C(x2)--*(1-delt)
	  prev = lev
	end	
	
    if C(x1) < C(x2) and ( lev < C(index) or prev == C(x1) )
	then         	  
	  lev = C(x1)
	  prev = lev
    end
	  
    if C(x1) > C(x2) and ( lev > C(index) or prev == C(x1) ) 
	then         	  
	  lev = C(x1)
	  prev = lev       		
	end
	 --]] 

	
  end   
  
  return  lev
 
  
end



Для корректного отображения данных счета необходимо обновить QUIK до версии 8.0.2

В связи с вступлением в силу с 1-го июля 2019 года Указания Банка России N 4928-У для корректного отображения маржинальных показателей, лимитов покупки/продажи и таблицы состояние счёта в системе QUIK пользователям необходимо обновиться до версии 8.0.2, доступной на всех серверах системы.

Обращаем ваше внимание на то, что новая версия системы QUIK работает только на операционных системах с 64-х битной архитектурой. Пользователям систем с 32-х битной архитектурой при подключении к серверу обновление предложено не будет. В связи с чем рекомендуем обновить систему Windows до 64-х битной архитектуры.

Управление клиентской поддержки Банка ВТБ (ПАО)

Открой счет в самом надежном брокере — банке ВТБ

Инвестиции. Моя стратегия, тактика, результат и ошибки.

Всем доброго дня. Решил поделиться свои опытом в инвестировании на фондовом рынке. 

Для начала я дам свое определение инвестора и чем он отличается от спекулянта/трейдера. 

Инвестор — этот тот, кто получает доход от владения активом. Спекулянт -  тот кто получает доход от перепродажи актива. Инвестор конечно тоже может продать акции с прибылью, как и спекулянт получить дивиденды пока владеет акцией, но основная деятельность инвестора сводиться именно к тому, чтобы владеть акциями и облигациями как можно дольше, если конечно он не перестал считать эту компанию перспективной или хотя бы стабильной на рынке. 

Я инвестор и вот мой портфель - 

Инвестиции. Моя стратегия, тактика, результат и ошибки.
Инвестиции. Моя стратегия, тактика, результат и ошибки.

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

Мои итоги июня

Закончился июнь. В отличие от мая месяца, где я маялся дурью, тут «июниться дурью» мне не пришлось. Прикрутил дисциплину, и сразу дела наладились. Да, не обошлось без пары косяков (забыл поставить стопы), но там я покрылся сразу по рынку и без сожаления (приобретённый рефлекс в результате жизненного опыта). Торговал строго по тренду. Рынок радовал, а тренд светился всеми красками радуги, поэтому июнь получился в плюс. Рос индекс, а вместе с ним рос и мой депозит.
Имею полное право вальсировать. Вальсировал :-) 

Пхай
Что показалось мне любопытным. Я спокойно взирал на график и видел себя в растущем дневном тренде, но оказалось… Оказалось, что я играл контртренд на самом крупном таймфрейме, какой только есть в природе. На каком таймфрейме? На народном. Да, есть такой супер-таймфрейм, называется народным, вот его определение:
«Май – всё в землю пхай, а июнь – хоть сей, хоть плюнь».
Блин, у меня всё вышло ровно наоборот! В мае пхай у меня не вышел, зато в июне я опхаялся! Значит, это была торговля на контртренде :-)



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

Торговый план на 24.06.2019

В группе ВКонтакт https://vk.com/simple_trade Вы найдёте: каждый понедельник в 11:00 по мск ONLINE обзоры, торговый план на день БЕСПЛАТНО, а также полезные статьи, публикации сделок, обсуждения и знания на основе личного опыта. 

Присоединяйтесь! )) 

Всем привет. Сегодня новостной фон нейтральный. Рынки на хаях, а мировые ЦБ заявляют, что готовы гнать цены на фин. активы бесконечно вверх. Но мы работаем по ситуации и на коротких дистанциях ;)

Торговый план на 24.06.2019
Br — Глобально тренд вниз, локально растём. Инструмент пробил локального продавца в зоне 63.5 — 64 и показал рост, пока в рамках коррекции, но потенциал сохраняется в зону 67.5 — 68. Сценарий для лонга: Коррекция к уровню 64,7, остановка на объемах выше уровня и длительная проторговка в течение 1-2 часов. Лонг с целью до 65.75 и далее на пробой. Либо ожидать пробой хая 65.75. В случае если не сможем удержать инструмент выше 64.7, возможен шорт с целью до 63.5



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

Вот так можно (нужно) скальпить большие гэпы

Инструмент РИ.
Маржа +32210 пунктов РИ (42140 руб).
Комис бирже 2220р.
Комис брокеру — фикс.
Количество трейдов 14.
Оборот 1258 контрактов (629 куплено и 629 продано).
Количество потраченного времени — 15 минут.

Вот так можно (нужно) скальпить большие гэпы



МВФ предрекает эру отрицательных процентных ставок по всему миру, мы на пороге новой реальности?

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

МВФ предрекает эру отрицательных процентных ставок по всему миру, мы на пороге новой реальности?
(Слабое восстановление после предыдущего кризиса привело к тому, что ставки ЦБ во многих странах по прежнему находятся на крайне низких значениях)

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



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

Кто делает

Добро пожаловать в настоящий трейдинг.

Закрываю 80-90% процентов прибыльных сделок на протяжении длительного времени. Из этого следует,  что нет просадок больших, а прибыль постоянно растет. Это не мистер пипс, переваривает более 15 млн руб, дальше незнаю.

Аккаунт на ТВ пока не раскрываю, через пару-тройку недель открою, если будут желающие следить за моим бизнесом. Ну и сделок побольше наберется.

В пн открою счет на автоследовании, чтобы эти картинки показывали реальную эквити.

По вашим плюсам увижу заинтересованность в этой  теме.

Спасибо.

Сделка закрыта: достигнута стоп-лосс цена

Кто делает

Сделка закрыта: достигнута тейк-профит цена

Кто делает



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

скрипт для quik

скрипт для отслеживания бумаг по системе BWS:

--Массив с Тикерами, добавьте нужные тикеры
aTickerList = {"MSNG", "GAZP", "LKOH",
	    "SIBN", "GMKN","ROSN",
	    "SBER", "TATN", "NVTK",
	    "IRAO", "RSTI", "SBERP",
	    "PHOR", "SNGS", "TRNFP",
	    "VTBR", "FEES", "MVID",
	    "RASP", "MFON", "AFLT", 
	    "MAGN", "ALRS", "MTSS", "MOEX",
	    "RTKM", "MGNT", "NLMK", "SNGSP",
	    "CHMF", "MTLR", "HYDR", "MFON",
	    "RSTI", "PLZL", "BANEP", "POLY"
	    };

--Функция поиска цены
function fGetPrice(sTickerName, sNum)
	--Подключаемся к источнику данных
	local ds=CreateDataSource("TQBR", sTickerName, INTERVAL_D1);
	while (Error=="" or Error == nil) and ds:Size() ==0 do sleep(10) end;
	if Error ~="" and Error ~=nil then message("Error: "..Error, 1) end;
	local sSize=ds:Size();
	local sCurrentPrice=ds:O(sSize);
	
	local sLastWeekPrice7=0;
	local sLastWeekPrice14=0;

	--Берем цену закрытия свечи неделю назад
	sLastWeekPrice7=ds:C(sSize-4);
	--Берем цену закрытия свечи 2 недели назад
	sLastWeekPrice14=ds:C(sSize-8);

		--Вычисляем проценты
		local sPrc7=math.floor((100-((sLastWeekPrice7*100)/sCurrentPrice))*100)/100;
		local sPrc14=math.floor((100-((sLastWeekPrice14*100)/sCurrentPrice))*100)/100;

		--Заполняем таблицу значениями
		SetCell(t_id, sNum, 0, tostring(sTickerName));
   		SetCell(t_id, sNum, 1, tostring(sCurrentPrice),sCurrentPrice);
   		SetCell(t_id, sNum, 2, tostring(sLastWeekPrice7),sLastWeekPrice7);
   		SetCell(t_id, sNum, 3, tostring(sLastWeekPrice14),sLastWeekPrice14);
   		SetCell(t_id, sNum, 4, tostring(sPrc7),sPrc7);
		SetCell(t_id, sNum, 5, tostring(sPrc14),sPrc14);

		--Текущая цена больше цены прошлой недели - раскрашиваем зеленым
		if sCurrentPrice>sLastWeekPrice7 then 
			fGreen(sNum);
		end;
		--Текущая цена меньше цены прошлой недели - раскрашиваем красным
		if sCurrentPrice<sLastWeekPrice7 then
			fRed(sNum);
	   	end;
		--Текущая цена больше цены прошлой недели и цена прошлой недели больше цены позапрошлой недели
		--раскрашиваем желтым
		if sCurrentPrice>sLastWeekPrice7 and sLastWeekPrice7>sLastWeekPrice14  then 
			fYellow(sNum);
	   	end;
end;

--- Функция создает таблицу
function CreateTable()
	-- Получает доступный id для создания
	t_id = AllocTable();	
	-- Добавляет 6 колонок
 	AddColumn(t_id, 0, "Тикер", true, QTABLE_INT_TYPE, 15);
 	AddColumn(t_id, 1, "Сегодня", true, QTABLE_INT_TYPE, 15);
 	AddColumn(t_id, 2, "Неделя", true, QTABLE_INT_TYPE, 15);
 	AddColumn(t_id, 3, "2 Недели", true, QTABLE_INT_TYPE, 15);
 	AddColumn(t_id, 4, "Неделя (%)", true, QTABLE_INT_TYPE, 15);
 	AddColumn(t_id, 5, "2 Недели (%)", true, QTABLE_INT_TYPE, 15);
	
	-- Создаем
	t = CreateWindow(t_id);
	-- Даем заголовок	
	SetWindowCaption(t_id, "7 Days");

   -- Добавляем строки
      for k,v in pairs(aTickerList) do
		InsertRow(t_id, k);
      end;
end;

--- Функции раскрашивают ячейки таблицы
function fRed(col)
	SetColor(t_id, col, -1, RGB(255,168,164), RGB(0,0,0), RGB(255,168,164), RGB(0,0,0));
end;
function fGreen(col)
	SetColor(t_id, col, -1, RGB(157,241,163), RGB(0,0,0), RGB(157,241,163), RGB(0,0,0));
end;
function fYellow(col)
	SetColor(t_id, col, -1, RGB(249,247,172), RGB(0,0,0), RGB(249,247,172), RGB(0,0,0));
end;

--Основная функция
function main()
	-- Создаем таблицу
 	CreateTable();

 	--Пробегаемся по массиву тикеров
	for k,v in pairs(aTickerList) do
	  fGetPrice(v, k);
	end;

end;
как выглядит в квике:

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

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