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

по

Автоматизация сигналов из TradingView за 2 минуты. Websockets Python

from websocket import create_connection
import json
import random
import string
import re
import pandas as pd
import csv
from datetime import datetime
from time import sleep

def filter_raw_message(text):
    try:
        found = re.search('"m":"(.+?)",', text).group(1)
        found2 = re.search('"p":(.+?"}"])}', text).group(1)
        print(found)
        print(found2)
        return found1, found2
    except AttributeError:
        print("error")
    

def generateSession():
    stringLength=12
    letters = string.ascii_lowercase
    random_string= ''.join(random.choice(letters) for i in range(stringLength))
    return "qs_" +random_string

def generateChartSession():
    stringLength=12
    letters = string.ascii_lowercase
    random_string= ''.join(random.choice(letters) for i in range(stringLength))
    return "cs_" +random_string

def prependHeader(st):
    return "~m~" + str(len(st)) + "~m~" + st

def constructMessage(func, paramList):
    #json_mylist = json.dumps(mylist, separators=(',', ':'))
    return json.dumps({
        "m":func,
        "p":paramList
        }, separators=(',', ':'))

def createMessage(func, paramList):
    return prependHeader(constructMessage(func, paramList))

def sendRawMessage(ws, message):
    ws.send(prependHeader(message))

def sendMessage(ws, func, args):
    ws.send(createMessage(func, args))

def generate_csv(a):
    out= re.search('"s":\[(.+?)\}\]', a).group(1)
    x=out.split(',{\"')
    
    with open('data_file.csv', mode='w', newline='') as data_file:
        employee_writer = csv.writer(data_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
    
        employee_writer.writerow(['index', 'date', 'open', 'high', 'low', 'close', 'volume'])
        
        for xi in x:
            xi= re.split('\[|:|,|\]', xi)
            print(xi)
            ind= int(xi[1])
            ts= datetime.fromtimestamp(float(xi[4])).strftime("%Y/%m/%d, %H:%M:%S")
            employee_writer.writerow([ind, ts, float(xi[5]), float(xi[6]), float(xi[7]), float(xi[8]), float(xi[9])])
            


# Initialize the headers needed for the websocket connection
headers = json.dumps({
    # 'Connection': 'upgrade',
    # 'Host': 'data.tradingview.com',
    'Origin': 'https://data.tradingview.com'
    # 'Cache-Control': 'no-cache',
    # 'Upgrade': 'websocket',
    # 'Sec-WebSocket-Extensions': 'permessage-deflate; client_max_window_bits',
    # 'Sec-WebSocket-Key': '2C08Ri6FwFQw2p4198F/TA==',
    # 'Sec-WebSocket-Version': '13',
    # 'User-Agent': 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 Edg/83.0.478.56',
    # 'Pragma': 'no-cache',
    # 'Upgrade': 'websocket'
})

    
# Then create a connection to the tunnel
ws = create_connection(
    'wss://data.tradingview.com/socket.io/websocket',headers=headers)

session= generateSession()
print("session generated {}".format(session))

chart_session= generateChartSession()
print("chart_session generated {}".format(chart_session))

# Then send a message through the tunnel 
sendMessage(ws, "set_auth_token", ["unauthorized_user_token"])
sendMessage(ws, "chart_create_session", [chart_session, ""])
sendMessage(ws, "quote_create_session", [session])
sendMessage(ws,"quote_set_fields", [session,"ch","chp","current_session","description","local_description","language","exchange","fractional","is_tradable","lp","lp_time","minmov","minmove2","original_name","pricescale","pro_name","short_name","type","update_mode","volume","currency_code","rchp","rtc"])
sendMessage(ws, "quote_add_symbols",[session, "BINANCE:BTCUSDT", {"flags":['force_permission']}])

sendMessage(ws, "resolve_symbol", [chart_session, "symbol_1","={\"symbol\":\"BINANCE:BTCUSDT\",\"adjustment\":\"splits\"}"])
sendMessage(ws, "create_series", [chart_session,"s1","s1","symbol_1","1",300])

sendMessage(ws, "quote_fast_symbols", [session,"BINANCE:BTCUSDT"])

sendMessage(ws, "create_study", [chart_session,"st1","st1","s1","Volume@tv-basicstudies-118",{"length":20,"col_prev_close":"false"}])
sendMessage(ws, "quote_hibernate_all", [session])

#st='~m~140~m~{"m":"resolve_symbol","p":}'
#p1, p2 = filter_raw_message(st)
#sendMessage(ws, "resolve_symbol", [chart_session,"symbol_1","={\"symbol\":\"BINANCE:BTCUSDT\",\"adjustment\":\"splits\",\"session\":\"extended\"}"])
#sendMessage(ws, "create_series", [chart_session, "s1", "s1", "symbol_1", "1", 2])
#sendMessage(ws, "create_study", [chart_session,"st4","st1","s1","ESD@tv-scripting-101!",{"text":"BNEhyMp2zcJFvntl+CdKjA==_DkJH8pNTUOoUT2BnMT6NHSuLIuKni9D9SDMm1UOm/vLtzAhPVypsvWlzDDenSfeyoFHLhX7G61HDlNHwqt/czTEwncKBDNi1b3fj26V54CkMKtrI21tXW7OQD/OSYxxd6SzPtFwiCVAoPbF2Y1lBIg/YE9nGDkr6jeDdPwF0d2bC+yN8lhBm03WYMOyrr6wFST+P/38BoSeZvMXI1Xfw84rnntV9+MDVxV8L19OE/0K/NBRvYpxgWMGCqH79/sHMrCsF6uOpIIgF8bEVQFGBKDSxbNa0nc+npqK5vPdHwvQuy5XuMnGIqsjR4sIMml2lJGi/XqzfU/L9Wj9xfuNNB2ty5PhxgzWiJU1Z1JTzsDsth2PyP29q8a91MQrmpZ9GwHnJdLjbzUv3vbOm9R4/u9K2lwhcBrqrLsj/VfVWMSBP","pineId":"TV_SPLITS","pineVersion":"8.0"}])


# Printing all the result
a=""
while True:
    try:
        sleep(1)
        result = ws.recv()
        pattern = re.compile("~m~\d+~m~~h~\d+$")
        if pattern.match(result):
            ws.recv()
            ws.send(result)
            print("\n\n\n hhhhhhhhhhhhhhhhhhhhhh "+ str(result) + "\n\n")
        print(result)
        a=a+result+"\n"
    except Exception as e:
        print(e)
        break
    
generate_csv(a)
'https://github.com/rushic24/tradingview-scraper'

Хотел вывести деньги с брокерского счета — почти все ушло на налог. Что случилось😳?

Налоги — штука полезная для общества, но коварная для несведущего инвестора.

Случаются такие парадоксальные ситуации. Инвестору вдруг понадобились деньги. Решил их вывести с брокерского счета, благо торгует успешно, есть прибыль. Но ожидая вывести одну сумму, получает намного меньшую. Вплоть до того, что она будет стремиться к нулю. Инвестору кажется, что налог съел всю прибыль. Как же так?

Все дело в расчетах налога при выводе денежных средств с брокерского счета.

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

Если сумма налога от финансового результата по сравнению с суммой вывода:

  • Больше —то удерживается налог только от суммы вывода.
  • Меньше — то удерживается налог от финансового результата.

Не понятно? Давайте на примерах. 

1️⃣ Допустим, инвестору приспичило вывести 100 000 рублей с брокерского счета. Весь год он успешно торговал. Прибыль по сумме всех операций составила 700 000 рублей. Тогда при выводе средств будет начислен налог (13%) — 91 000 рублей. В итоге инвестору капнет на счет всего 9 000 рублей 😳.



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

А ты заплатил налог с ВАЛЮТЫ? Считаем, разбираемся...

    • 31 января 2021, 00:35
    • |
    • TAUREN
      Популярный автор
  • Еще
Всем доброго вечера! 

Рубль в прошедшем году сильно подешевел, многие получили прибыль от продажи подорожавшей валюты, но брокер не является налоговым агентом :( 

Решил проявить сознательность и заплатить налог за 2020 год и потратил немало времени, чтобы разобраться. Всё, что узнал постараюсь донести)

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

1. Обязанность платить налог и подавать 3-НДФЛ есть (валюта считается имуществом)

НДФЛ нужно подавать если была хотя бы одна продажа личного имущества (в т.ч. иностранной валюты), даже если сделка была убыточной или налог равен 0 в связи с применением вычетов. Штраф за неподачу 3-НДФЛ равен 1000 руб + налог + пени и т.д.

2. Считать налог — та еще головная боль

Здесь может быть несколько вариантов.

Вариант 1: продажи валюты и прочего имущества в сумме составили менее 250 т. р. Здесь просто можно воспользоваться имущественным налоговым вычетом и налогооблагаемая база станет равна 0, как и сам налог.

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

Статья про налоги. Прочтите пожалуйста.

Статья про налоги. Прочтите пожалуйста. 3-НДФЛ
Статья про налоги. Прочтите пожалуйста.


Доброго времени суток, коллеги!

Сегодня в своей статье я опишу крайне важную и объемную тему, с которой рекомендую ознакомиться всем.


Покажу на примере Interactive Brokers.
У других брокеров аналогичная схема.

 

Итак, начнем

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

Кто признается налоговым резидентом: признаются граждане РФ, иностранные граждане, лица без гражданства, если они находится на территории РФ более 183 календарных дней в течение 12 следующих подряд месяцев. Период нахождения физического лица в Российской Федерации не прерывается на периоды выезда физического лица за пределы Российской Федерации для краткосрочного (менее шести месяцев) лечения или обучения, а также для исполнения трудовых или иных обязанностей, связанных с выполнением работ (оказанием услуг) на морских месторождениях углеводородного сырья. И другие.



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

Interactive Brokers.Как перевести деньги в Interactive Brokers со счета в российском банке в 2021


Схема пополнения и выврда средств. Как обычно все работает. 
Изменений нет. 
Далее
Сама инструкция шаблон

Как перевести деньги в Interactive Brokers 

Покажу подробно, шаг за шагом.

Инструкция, про первичный перевод денег с вашего счета в российском банке на счет Interactive Brokers. Она для тех инвесторов и трейдеров, которые планируют инвестировать через зарубежного брокера, в частности через «Интерактив Брокерс». 

Важно сделать первый перевод.
И сохранить реквизиты в личном кабинете.


Далее,
покажу подробно на примерах.

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


Смотрите внимательно и дочитайте пост до конца. Есть нюансы.

Лайфхак №1.

Если у Вас Тикькофф банк и вы делаете перевод в рублях.

То комиссия равна нулю.


Лайфхак №2.


Обменивать рубли на доллары и другие валюты.
Значительно выгоднее. Чем в любых обменниках и банках в РФ.




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

3-НДФЛ по дивам без боли и мучений: автоматический расчёт налога

    • 08 января 2021, 15:32
    • |
    • a1pha
  • Еще

При наличии табличных данных по выплатам за год у вас уйдёт 5-10 минут на заполнение 3-НДФЛ по иностранным дивидендам с любым количеством этих самых выплат. В общем я замутил в Google таблицах Приложение к декларации 3-НДФЛ, которое само всё считает и которое можно сохранить в pdf и отправить в налоговую. Вот делюсь с вами)

Здесь я не буду подробно останавливаться на обязанности доплаты НДФЛ по полученным дивидендам от иностранных компаний. Ограничимся фактом, что обязанность такая есть: большинство торгующихся на СПб бирже компаний зарегистрированы в США, и если вы подписали форму W8-BEN, то с вас удержат 10% налога по ставке США (кроме акций REIT). Получается, 



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

Мы будем платить больше налогов в 2021

Грустные новости, о которых надо знать.
сделали для вас подборку изменений.
кратко
🚩 по вкладам будет сильно больше налог если у тебя совокупно депо больше 1 млн. Налоговая сама посчитает и покажет в ЛК в 2022
🚩 по всем бондам теперь 13%
🚩 НДФЛ при доходе (кроме продажи недвижки) все что выше 5 млн Руб + 2%

Мы будем платить больше налогов в 2021



10 уроков по ETF

Биржевые фонды (ETF) ворвались на сцену в конце 2000-х — начале 2010-х годов, накопив сотни миллиардов долларов в активах и вызвав в процессе серьезный сдвиг в сторону стратегий индексации.

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


1.«Дивидендные ETF» не всегда приносят большие дивиденды

Многие инвесторы восприняли ETF как эффективные инструменты для реализации стратегии инвестирования, ориентированной на дивиденды;
Обертка, торгуемая на бирже, обеспечивает дешевую и низкую в обслуживании реализацию экрана дивидендов на основе правил.
Благодаря тому, что инвесторам доступны десятки ETF, ориентированных на дивиденды, у покупателей нет недостатка в выборе.
Важно отметить, что не все «дивидендные ETF» предлагают значительную дивидендную доходность, в основном в результате того, как эти дивидендные ETF создаются и обслуживаются.
Многие ETF, ориентированные на дивиденды, ставят во главу
угла последовательность выплат, а не величину дивидендной доходности
.
Например,
ETF Vanguard Dividend Appreciation (VIG) включает только компании, которые увеличивали свои дивиденды не менее десяти лет подряд.
Таким образом, компании-производители компонентов могут иметь мизерную дивидендную доходность до тех пор, пока абсолютные выплаты в долларах неуклонно растут.
В этом подходе нет ничего плохого, но он может не подходить тем, кто хочет максимизировать текущую прибыль.
Прежде чем приступить к делу, важно заглянуть под капот и полностью понять цель инвестиций.

Практический результат:



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

Как девушке исправить размытый шрифт в QUIK

    • 15 ноября 2020, 14:44
    • |
    • GOLD
      Популярный автор
  • Еще
Дорогие девушки, если вы видите размытый шрифт в QUIK, то это происходит из-за масштабирования экрана Windows 10. Не парьтесь, почему это происходит. Главное, это легко лечится.

Нажмите правую кнопку мыши на иконке QUIK (или на файле info.exe в папке QUIK) и выберите Свойства. В открывшемся окне свойств выберите закладку Совместимость, в которой нажмите кнопку Изменить параметры высокого DPI:

Как девушке исправить размытый шрифт в QUIK

В открывшемся окошке со всякими дурацкими надписями выберите этот пункт:

Как девушке исправить размытый шрифт в QUIK

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

Визуализация рекомендаций Романа Андреева на Python

Доброго всем здоровья и веселого праздника!

В этом топике я покажу как на Питоне можно извлекать полезную информацию из обычного текста и представлять ее на графиках. Большинство аудитории Смартлаба знают Романа Андреева (2 место по рейтингу, после Создателя) как профессионального трейдера, рекомендациями которого пользуются многие смартлабовцы. Ежедневный утренний топик «Ситуация на текущий момент», стал уже многолетней традицией, как чашка кофе с круассаном, и по-праву набирает огромное количество лайков. Его рекомендации помогают людям не только сохранить свой капитал, но и приумножить его. Я, к сожалению, лично не знаком с Романом, но давно являюсь его подписчиком. А еще, мне нравятся его стихи!
Спасибо Роману за его труд! Я же, постараюсь добавить «наглядности» рекомендациям с помощью кода на Питоне, как всегда в несколько строк.
Визуализация рекомендаций Романа Андреева на Python
Итак, за дело! Топик длинный и н



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

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