Избранное трейдера Винету Карабасович Монетка

по

Таблица "Портфель" в QUIKе


    Представляю таблицу для портфельных инвестиций. В квике до сих пор такого нет. Цвет строки меняется если Прибыль%<>5%. Обновление каждые 5 сек.
Таблица "Портфель" в QUIKе

Для её создания необходимо:
1. Создать файл «tablePortfolio.txt» в папке «C:\QUIK\Scripts». Если папки нет, создать её.
2. Скопировать туда код скрипта
3. Сохранить, выбрав кодировку «ANSI», иначе вместо русских букв могут быть кракозябры.
4. Сменить расширение файла с ".txt" на ".lua"
5. Запустить скрипт командой Сервисы->Lua  скрипты->Добавить (выбрать файл tablePortfolio.lua) ->Запустить

Код скрипта:
IsRun = true
class_code="TQBR"

function main()
   -- Получает доступный id для создания
   t_id = AllocTable()   
   
   -- добавить столбцы
   AddColumn(t_id, 1, "Бумага",       true, QTABLE_STRING_TYPE, 20)
   AddColumn(t_id, 2, "Кол-во",       true, QTABLE_INT_TYPE,     7)
   AddColumn(t_id, 3, "Цена покупки", true, QTABLE_DOUBLE_TYPE, 14)
   AddColumn(t_id, 4, "Цена текущая", true, QTABLE_DOUBLE_TYPE,   14)
   AddColumn(t_id, 5, "Прибыль, р",   true, QTABLE_DOUBLE_TYPE,   14)
   AddColumn(t_id, 6, "Прибыль, %",   true, QTABLE_DOUBLE_TYPE, 14)
   t = CreateWindow(t_id)

   for iRow=1, getNumberOf("depo_limits")-1, 1 do
      rowInPortfolioTable = getItem("depo_limits", iRow) -- получить текущую строку из таблицы "Лимиты по бумагам"            
      qtyBoughtLots  = tonumber(rowInPortfolioTable.currentbal)         
      limitKind = rowInPortfolioTable.limit_kind          
      if qtyBoughtLots>0 and limitKind<1 then      
         InsertRow(t_id, iRow)-- добавить новую строку вниз таблицы   
      end
   end
   local rows, columns = GetTableSize (t_id)
   InsertRow(t_id, rows+1) -- добавить новую строку вниз таблицы для "Итого"
   
   SetWindowCaption(t_id, "Портфель: прибыли и убытки    © ramirzaev@mail.ru") 

   -- исполнять цикл, пока пользователь не остановит скрипт или не закроет окно таблицы
   while IsRun do 
      if IsWindowClosed(t_id)==true then
         IsRun=false
      end

      local currentPrice=0
      local qtyBoughtLots=0
      local profitAbs = 0
      local profitPerc = 0
      local currentSecCode= ""
      local fullNameOfInstrument = ""
      local limitKind = 0
      local rowInPortfolioTable = {}    -- строка из таблицы "Лимиты по бумагам"
      local tableInstrument = {}    -- данные "Таблицы текущих торгов"
      local iRowInOutTable = 1
	  local totalInvest = 0
	  local totalPortfolio = 0
	  local totalProfit = 0
	  local totalPercent = 0

      for iRow=0, getNumberOf("depo_limits")-1, 1 do
         rowInPortfolioTable = getItem("depo_limits", iRow) -- получить текущую строку из таблицы "Лимиты по бумагам"         
         
         qtyBoughtLots  = tonumber(rowInPortfolioTable.currentbal)
         
         limitKind = rowInPortfolioTable.limit_kind 
         
         if qtyBoughtLots>0 and limitKind<1    then      -- если кол-во лотов >0 и тип лимита T0
            currentSecCode = rowInPortfolioTable.sec_code
            fullNameOfInstrument =  tostring(getParamEx(class_code, currentSecCode, "SHORTNAME").param_image or "0") --"LONGNAME"
            avgPrice       = tonumber(rowInPortfolioTable.awg_position_price)                  
            currentPrice = GetAskPrice(currentSecCode)   
            profitAbs = (currentPrice-avgPrice)*qtyBoughtLots      
            profitPerc    = 100*currentPrice/avgPrice   - 100
			
			totalInvest = totalInvest + avgPrice*qtyBoughtLots  
			totalPortfolio = totalPortfolio + currentPrice*qtyBoughtLots   
            
            SetCell(t_id, iRowInOutTable, 1, fullNameOfInstrument) -- "Бумага"
            SetCell(t_id, iRowInOutTable, 2, tostring(qtyBoughtLots)) -- "Кол-во"RemoveZero(tostring(qtyBoughtLots)))
            SetCell(t_id, iRowInOutTable, 3, tostring( math_round(avgPrice, 3) ))  -- tostring(avgPrice))   -- "Цена покупки"
            SetCell(t_id, iRowInOutTable, 4, RemoveZero(tostring(currentPrice)))   -- "Цена текущая"
            SetCell(t_id, iRowInOutTable, 5, tostring( math_round( profitAbs, 0)) ) -- "Прибыль, р"
            SetCell(t_id, iRowInOutTable, 6, tostring(math_round(profitPerc, 1)) .."%") -- "Прибыль, %"
            
            if profitPerc >5 then       -- окрашиваем
               ColourRowInGreen(iRowInOutTable)
            elseif profitPerc<-5 then 
               ColourRowInRed(iRowInOutTable)
            else 
               ColourRowInYellow(iRowInOutTable)
            end   
            iRowInOutTable = iRowInOutTable+1
         end
      end
      totalProfit = totalPortfolio - totalInvest 
      totalPercent   = 100*totalProfit/totalInvest  
	  SetCell(t_id, iRowInOutTable, 1, "Итого") 
      SetCell(t_id, iRowInOutTable, 3, tostring( math_round(totalInvest, 0) ))  
      SetCell(t_id, iRowInOutTable, 4, tostring( math_round(totalPortfolio, 0)))  
      SetCell(t_id, iRowInOutTable, 5, tostring( math_round( totalProfit, 0)) ) 
      SetCell(t_id, iRowInOutTable, 6, tostring(math_round(totalPercent, 1)) .."%") 
	  
	  if profitPerc >5 then       -- окрашиваем
               ColourRowInGreen(iRowInOutTable)
            elseif profitPerc<-5 then 
               ColourRowInRed(iRowInOutTable)
            else 
               ColourRowInYellow(iRowInOutTable)
            end   
            iRowInOutTable = iRowInOutTable+1
      sleep(5000) -- пауза 5 сек.
      end
   --message("script table portfolio finished")
end


function ColourRowInRed(num_row)
   SetColor(t_id, num_row, QTABLE_NO_INDEX, RGB(255,150,150), RGB(0,0,0), RGB(255,150,150), RGB(0,0,0))
end
function ColourRowInYellow(num_row)
   SetColor(t_id, num_row, QTABLE_NO_INDEX, RGB(255,255,200), RGB(0,0,0), RGB(255,255,200), RGB(0,0,0))
end
function ColourRowInGreen(num_row)
   SetColor(t_id, num_row, QTABLE_NO_INDEX, RGB(150,255,150), RGB(0,0,0), RGB(150,255,150), RGB(0,0,0))
end
function GetAskPrice(inp_Sec_Code )
   local ask = tostring(getParamEx(class_code, inp_Sec_Code, "OFFER").param_value or 0)
   return ask
end
-- Округляет число до указанной точности
function math_round (num, idp)
   local mult = 10^(idp or 0)
   return math.floor(num * mult + 0.5) / mult
end
-- удаление точки и нулей после нее
function RemoveZero(str)
   while (string.sub(str,-1) == "0" and str ~= "0") do
      str = string.sub(str,1,-2)
   end
   if (string.sub(str,-1) == ".") then 
      str = string.sub(str,1,-2)
   end   
   return str
end
function OnStop()
   DestroyTable(t_id)
   IsRun = false   
end
  • обсудить на форуме:
  • QUIK

Настоящая правда про Золотовалютные Резервы ЦБ. Это как раз то, что вы не знали.

Одно из мнений не более!

Как вы знаете, су­ще­ству­ет несколь­ко раз­но­вид­но­стей зо­ло­то­ва­лют­ных ре­зер­вов Цен­траль­но Банка РФ. Это золото – оно дома лежит. Это по­зи­ция в МВФ, — так ска­зать доля при го­ло­со­ва­нии. Это де­по­зит­ные рас­пис­ки, так на­зы­ва­е­мые СДР, — это так и не со­сто­яв­ши­е­ся ми­ро­вые меж­бан­ков­ские деньги (у нас их совсем мало) и чисто валюта.
Золото, МВФ и СДР мы не рас­смат­ри­ва­ем. Золото – оно дома на складе. А МВФ и СДР просто мизер, ко­то­рый, к тому же, вложен в других целях. Нас ин­те­ре­су­ет ВАЛЮТА. Этой ВАЛЮТЫ на 01.08.17 у ЦБ 338м­лрд. долл.

А вы не про­бо­ва­ли за­да­вать вопрос: « А откуда у ЦБ такая ги­гант­ская сумма в валюте?». У Пра­ви­тель­ства в Ре­зер­ве 16 млрд. долл., а у ЦБ аж 338? Что такого вы­да­ю­ще­го­ся делает наш ЦБ, что у него больше денег, чем у страны в 20 раз? 

Пред­ставь­те себе про­стую эко­но­ми­че­скую си­ту­а­цию. Страна Россия про­да­ла нефти за рубеж на 1 млрд.долл. Деньги по­сту­пи­ли на счет Пра­ви­тель­ства РФ. Теперь деньги нужно по­тра­тить на нужды страны. Но в стране ходят рубли. Значит, дол­ла­ры нужно кон­вер­ти­ро­вать в рубли. Через бир­же­вой ме­ха­низм деньги по­па­да­ют на счета ЦБ, ЦБ про­во­дит эмис­сию, и на счета Пра­ви­тель­ства падают кон­вер­ти­ро­ван­ные 60 млрд.руб. И дальше деньги уходят в эко­но­ми­ку страны. Всё, деньги в эко­но­ми­ке!!! Что еще надо? 

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

Как распорядиться деньгами с умом, или путь к свободной жизни (лонгрид, сразу предупреждаю!)

РЕПОСТ.
АВТОР: Георгий Вербицкий
Взято отсюда или отсюда

_______________________________________________________

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

Итак, в какой-то момент у вас после покрытия всех основных потребностей, таких как еда, кров, безопасность, остаются свободные деньги. Может быть вы просто потребляете меньше, чем тратите, а может быть бабушка оставила квартиру, а вы ее продали и думаете что делать с деньгами — в принципе это не столь важно. У всех в какой-то момент жизни случается момент, когда появляются свободные деньги. Но 90% быстро по привычке возвращаются к состоянию «без денег», и лишь немногим удается удержать состояние «с деньгами». Причина — отсутствие плана и понимания, какими в этом случае будут адекватные действия. Сразу скажу, что этап номер ноль — это закрыть все долги и кредиты. До этого момент все свободные деньги тратятся только на эту задачу. Допустим, вы все это сделали, и у вас все равно остались свободные деньги. Что делать?



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

Бесплатный инструмент для статистики и анализа сделок

Всем, привет.

   Решил поделиться интересным, на мой взгляд, и бесплатным сервисом по ведению статистики и аналитике сделок. Я давно искал удобный инструмент для ведения журнала сделок и последующей их аналитике. Этот момент я считаю очень важным в обучении трейдингу и выработке своей торговой системы. Смотрел много разных продуктов: PirateTrade, MaxProfit, Marketstat и др. но большинство из них платные (причём стоят приличных денег), а функционал не всегда устраивает. На днях наткнулся на бесплатный онлайн сервис с очень продвинутым функционалом и даже частично русифицированным :)

Называется - FX Blue Live.
Бесплатный инструмент для статистики и анализа сделок
    Сервис абсолютно бесплатный, только необходимо зарегистрироваться. Данные можно загружать из разных терминалов в т.ч. MT5, которым я пользуюсь для торговли на ФОРТС. Загрузка данных очень удобна (буквально в два клика) с автоматической синхронизацией через специальный эксперт для MT5. Огромный функционал с всевозможными фильтрам, графиками и аналитикой. Сделано все довольно качественно, есть подробная документация и интерфейс вполне дружелюбный. Сервис, как я понял, больше заточен по форексников, но с фьючами ФОРТС тоже отлично справляется. В целом мне очень понравилось, причем он даст фору многим платным продуктам.

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

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

Почему я считаю, что пузырь на рынке крипты даже еще не начинался или почему бизнесмен на помидорах (http://smart-lab.ru/blog/407162.php) скоро прогорит.

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

Более того, на вполне обычные доводы по риск менеджменту со стороны обладателя капитала, связанными с а) выходом из сделки (market/settlement risk), т.е. где гарантии, что инвестор получит свои деньги обратно и б) по сути, посылая СанЭпидемНадзор, ФМС и налоговую подальше (в комментариях к посту), т.е. полностью лишая бизнес легитимности, тем самым еще больше увеличивая риск невозврата инвестиций, Mr. Помидор, ввиду, понятное дело, своей недальновидности и заплывшего мозга (от собирания сорняков, видимо), начал опять предлагать устроить какой то непонятный спор на совершенно другую тему, не относящуюся к основным рискам любого инвестора. Ну, да ладно. Бог ему судья, но я, со своей точки зрения, тоже готов поспорить, что рано или поздно все-таки гос.органы то навестят обязательно очень шустрого бизнесмена (тем более если он еще и расширяться там планирует) и еще неизвестно кто и куда там кого и как пошлет.

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

Повесть о настоящем трейдере

    • 09 июня 2017, 10:53
    • |
    • TT
  • Еще
В прошлом посте я написал, почему на сМарт-лабе хорошо любителям. Теперь я напишу, почему на сМарт-лабе плохо профессионалам. Дело в том, что настоящий трейдер очень хочет что-нибудь написать на сМарт-лаб. Но не делает этого, потому что ему совершенно нечего написать.

Настоящий трейдер не может написать какая будет цена, потому что он не знает, ни где она будет завтра, ни где она будет через час.

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

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

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

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

А вы сливали 5 млрд. евро? Новая киношка про трейдинг


В 2008 году произошла история, которая была во всех  новостях — трейдер банка Société Générale Жером  Кервьель в результате своей торговли принес банку  убыток в 5 мдрд евро. 

В 2016 году французами был снят фильм L'outsider (Аутсайдер) по мотивам этой истории. К сожалению, фильм так и не перевели ни на русский, ни на английский. По просьбе читателей сайта http://tradelikeapro.ru, сайтом был организован перевод этого  фильма и теперь вы можете посмотреть эту захватывающую историю о безусловно талантливом  трейдере (за свою карьеру  он принес банку несколько миллиардов прибыли), которого погубила чрезмерная уверенность в себе. 


Отдельный привет трейдеру и хорошему человеку, идейному вдохновителю, который организовал и оплатил перевод для нас, а именно Pavlusу777(7).

Ах да… забыл ссылочку дать — https://rutracker.net/forum/viewtopic.php?t=5408330
Все удачного просмотра.
P.S. Кино еще не смотрел, не смогу ответить на вопросы о фильме!
А вы сливали 5 млрд. евро? Новая киношка про трейдинг


Индикатор для парного трейдинга+рубле-бочка

    • 22 мая 2017, 17:17
    • |
    • Albus
  • Еще
Как и обещал, выкладываю простой индикатор для анализа двух инструментов. Его можно использовать для любых пар на свой вкус.
Вот например, Сбер обычный (вверху) против сбера привилегированного (посерёдке). Индикатор внизу — красный. Для его расчёта первый график поделён на второй.
Индикатор=SBER/SBERP
Индикатор для парного трейдинга+рубле-бочка
Дивиденды по ним одинаковые, ценообразование одинаковое, однако по странной воле рынка в эти дни Сбер обычный слишком дёшев против сбера привилегированного. Красный график утоптан вниз, а ведь ещё недавно был намного выше. Это не совет, но если (вдруг!) вы думаете, что эта несправедливость скоро выровняется, вам надо купить SBER и шортануть на такой же объём SBERP. А ещё лучше шортануть фьючерс на SBERP, чтобы не платить брокеру за акции взятые в долг.
----------
Итак, индикатор. Я дописал к коду комментарии, чтобы даже новичок не кодер мог разобраться.
Скачать индикатор.

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

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