Избранное трейдера GoGo
Пока есть свободная минутка, хочу вставить свои 5 копеек к новому видео https://smart-lab.ru/blog/540491.php от редактора сайта. Моя мысль, как всегда будет длинной и нудной. Уж потерпите. Итак, сначала начну с замечания. Тимофей, невозможно сделать правильные выводы о происходящих событиях не зная историю нашей цивилизации и мировой экономики в целом. Хтя бы время от времени интересуйтесь историческим событиями. Например, некоторые значимые экономические события можно увидеть в миниатюре. Достаточно прочитать про племя Рапа Нуи проживавших на острове Пасхи. Их модель взаимоотношений работает по сей день.
Снова вернёмся к истории и вспомним экономическое чудо Англии. Не буду грузить датами и лицами, расскажу самый сок. Это была довольно бедная страна. Англия была крупнейшим мировым поставщиком шерсти. В определенный момент правительство запретило экспорт шерсти. Стало разрешено продавать только изделия из шерсти. Экономика Англии стала расти благодаря тому, что на её территории стали создаваться промышленные предприятия.
В комментариях к предыдущему посту «Выставил на деньги» Евросеть – лайфхак. https://smart-lab.ru/blog/456884.php человек задал вопрос о своей конкретной проблеме –
«Дочери подарил на день рождения пару недель назад смартфон и он самопроизвольно выключается… Куда сначала идти? Покупал в Корпорации Центр.»
Т.к я все-таки не являюсь специалистом в этом вопросе, и дабы не вводить в заблуждение, создал этот отдельный пост. Здесь я просто размещаю Памятку для потребителя «Вы купили некачественный телефон»
Памятку мне выдали в Управлении по защите прав потребителя, куда я обращался.
Сделал это отдельным постом исключительно для того, чтобы необходимая кому-то информация не потерялась в потоке сообщений.
Никакого краткого изложения документа делать не стал, опять таки, чтобы не искажать информацию, тем более что размер памятки небольшой. На мой взгляд, в ней очень ясно и подробно описан алгоритм действия.
Добрый день, друзья.
Сегодня статья посвящена порядку не просто заполнения самой декларации, а как грамотно отметить в декларации полученные убытки в 2017 году, чтобы грамотно их сальдировать.
Разберем пример, в котором гражданин торговал через двух российских брокеров – у одного в 2017 году получен убыток, а у второго получена прибыль и с нее удержан был уже НДФЛ.
Можно ли в таком случае зачесть убыток и прибыль, если брокеры абсолютно разные? Конечно, можно. И я сейчас покажу, как правильно это сделать. Это совершенно не сложно.
Надо у прибыльного брокера запросить справку 2-НДФЛ. У убыточного брокера следует запросить справку об убытках (или налоговый регистр, в котором будет выделен убыток). И заодно я покажу, почему от убыточного брокера не хватит справки 2-НДФЛ, почему нужна справка об убытках.
Я буду показывать, как заполнить декларацию на программном обеспечении Федеральной налоговой службы, которую можно скачать с официального сайта ФНС России.
Когда вы получили на руки все нужные справки, то начинать работу следует со справки 2-НДФЛ, чтобы ввести данные по прибыльному брокеру. И вот тут, как показывает практика, возникают часто вопросы. Посмотрите на пример справки 2-НДФЛ: на картинке видно, что были операции с ценными бумагами и ФИССами.
В свое время у меня была задумка — посмотреть какой в реальности (включая комиссии) спред между спотом и фьючерсом и стОит ли его торговать. Так как, ни С#, ни Lua я, пока, не изучил, то пришлось писАть на Qpile…
Торговый функционал в скрипте не прописывал, поэтому его можно использовать только, как анализатор.
Кому надо – забирайте, так как я решил для себя дальше эту тему не развивать (по крайней мере пока)…
Выглядит интерфейс вот так:
Особенности:
— текущий фьючерс определяется автоматически, в день экспирации автоматически переключается на новый;
— перед использованием надо указать папку в настройках пользователя для расчетов;
— в скобках отражается средний процент за последние 500 замеров для объективности расчетов (цифру можно менять в настройках пользователя);
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
Грубо есть два полюса финансовой жизни человека.
1. Брать деньги в долг сейчас на текущие нужды и расплачиваться «потом». Потребительский кредит. На квартиру, на машину, на телефон, на чайник и на одежду.
Логика: человек берет в долг у себя «будущего», которому придется добывать «средства + процент» в будущем на обеспечение комфортного уровня жизни сейчас.
2. Сбережения и инвестиции. Депозиты, акции, облигации и пр.
Логика: человек берет в долг у себя «настоящего», чтобы пользоваться благами в будущем и обеспечить лучшее потребление и финансовую устойчивость когда-то «потом». Суть инвестиций также в долге. Только занимаете вы у себя же, лишая возможностей потреблять прямо сейчас.
Безусловно, кредит дороже инвестиций, однако если жизнь закончится в период накопления\инвестирования, когда вы не успели вернуть вложенное, то получится, что вы недоедали, недопутешествовали и недопотребляли зря. Например, P\E = 20, то есть возвращать вложенное вы будете 20 лет, а умрете, например, через 10 лет после первого вложения. Не факт, что ваши наследники решат продолжить начатое.