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

по

Один старый метод, как легко и просто (?) предсказать S&P


Один старый метод, как легко и просто (?) предсказать S&P

Напомним, что Термин Breakeven Rаte означает инфляцию, а точнее ее ожидания, которую вычисляют, основываясь на биржевых котировках обычных казначейских облигаций и  облигаций, привязанных к инфляции. Т.е. на котировках, которые возникают вследствие того, что люди ставят на кон свои деньги.  За последний год  наблюдалась удивительно высокая корреляция между этими двумя графиками. Такое бывает не всегда, но в последние  месяца зависимость просто изумительная. Желающие могут поработать на ней, пока она не поломалась.  Кстати, приблизительно с середины февраля на мировых фондовых площадках начались неполадки и местами даже настоящие коррекции. И о чудо, ожидаемая 10 летняя инфляция тоже начала загибаться вниз. И даже с опережением. 

Как перестать беспокоиться, и начать торговать.

    • 26 февраля 2021, 18:28
    • |
    • 3Qu
  • Еще
Что-то очень много статей развелось о сливах интрадейщиков, состоянии их нервной системы и прочих невзгодах. Однако, ничего спокойней интрадея найти невозможно — думать и анализировать вообще ничего не надо, а встал из за компа — так и вообще о рынке забыл.
Все просто. Единственная стратегия на рынке: покупай дешево, продавай дорого. Других не существует. Собственно, как и в любом бизнесе — ничего нового. Вопрос только, как определить, где дешево, а где дорого.
Это тоже несложно, в этом нам поможет простейшая мат статистика. Проводим на графике линию полиномиальной регрессии, рассчитываем стандартное отлонение (СТО), проводим на графике линии СТО. Под линиями СТО — статистически дешево, над линиями СТО — дорого.
Вот и определились с уровнями покупки и продажи.
Далее, учитываем, что цена никому ничего не обязана, и может ходить куда угодно, но чаще все таки ходит внутри диапазона распределения.
Вот и все, система готова, она вся на картинке.
Как перестать беспокоиться, и начать торговать.

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




Парный трейдинг не для всех

    • 10 февраля 2021, 12:55
    • |
    • ELab
  • Еще
Известный факт — парный трейдинг не приносит прибыли. Все модели сливают. Понятно, что или расходятся они недостаточно для того чтобы окупить спрэд (например, обычные против префок или GOOG против GOOGL) или просто не состоянии сохранить зависимость друг от друга после обнаружения таковой. Поэтому часть трейдеров ищет зависимости между ETF, а другая между ETF, фьючерсами и корзиной акций. Это так называемый классический стат. арбитраж.

Я предлагаю взглянуть на с другой стороны и торговать корзину из более чем 200 акций (да, извините, но это не для российского рынка — даже 20-30 акций недостаточно). Для начала нужно высчитать синтетик у которого будет минимальная дисперсия — всех интересующихся отсылаю к трудам hrenfx, который, впрочем, пошел путем непрозрачных и требовательных вычислений, которые требуют большое кол-во памяти и не в состоянии рассчитать синтетик для более чем 30 и более инструментов. Каждый желающий прочитав посты hrenfx может самостоятельно все вычислить используя несколько строк на Python. Чтобы не утомлять деталями в финале получим синтетик вида k1*msft + k1*aapl +… k_n*XLNX. Одна часть синтетика будет с положительными значениями, другая с отрицательными. Это и будет синтетик с минимальной дисперсией, который вы уже можете начать торговать. В реальности нужно будет нормировать коэффициенты и отсеять акции вес которых в портфеле, например, меньше 5-10% (все зависит от торгуемого капитала — ведь нужно будет на эти 5% купить минимальное кол-во акций). Так же можно убрать и дорогие акции AMZN, TESLA etc… Разумно выбрать одну часть синтетика с отрицательными или положительными коэффициентами и торговать «one leg» по оценке на основе полного синтетика. Это снизит издержки и повысит вашу прибыль.  

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

Кредитная карта для биржи. В каком банке есть?

Привет!
Держу средства на брокерском счете. Все деньги вложены на срочном рынке. Меня напрягает ситуация, когда каждые праздники (новый год, 23 февраля, 8 марта, 9мая, 11 июня, 4 ноября) Мосбиржа повышает ГО на 30%. Приходиться тупо держать на счете в банке 30% от счета. Перед праздниками завожу эту сумму брокеру. После праздников -вывожу.


Хочу найти кредитную карточку, с которой можно стягивать деньги card2card без процентов за снятие. Я даже готов заплатить за использование денег эти 3-5 дней. Есть такие карты?
Как вы выходите из данной ситуации?

p.s. Все средства вложены в некоррелирующие фьючерсы (1 -метал, 1-топливо, 1 -акция рф, 1-облигации, 1-валюта из бивалютной корзины, 1-валюта из индекса доллара), причем в разном направлении — что-то лонг, что-то шорт.

Существует ли Кукл? Ответ алготрейдера-кванта.

    • 05 февраля 2021, 17:58
    • |
    • fxsaber
  • Еще
Существует ли Кукл? Ответ алготрейдера-кванта.


На биржах доказано много раз, что шорт-сквизы и прочие методы манипуляции работают. Эти «интервенции» не являются Куклом

Существует ли Кукл на таких сильно ликвидных рынках, как Форекс? Или природа движении цены кроется в действиях «толпы»?

Примерно такой вопрос иногда слышу, поэтому отвечу один раз публично на эту тему, как опытный алготрейдер и квант по совместительству.

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

Методичка ABC of stock trading от легенды Blastarr_no_1

12 лет назад в ЖЖ блистал такой человек Blastarr_no_1. Он красочно рассказывал, как зарабатывал деньги десятками миллионов рублей, и в итоге заработал на кризисе 2008-2009 более 1 млрд рублей. Потом он сообщил всем что ушёл в политику и удалил свой ЖЖ. Выдумка или правда — так и осталось тайной. Вот тут 10 лет назад я делился у себя в блоге мыслями после прочтения его блога. По ссылке внутри поста на бластара можно не переходить, после удаления этот логин зарегали какие-то лохотронщики.

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

Итак, Методичка ABC от blastarr_no_1 «Основные принципы спекуляции» в 5 частях:

smart-lab.ru/blog/250818.php
smart-lab.ru/blog/250820.php
smart-lab.ru/blog/250824.php
smart-lab.ru/blog/250827.php
smart-lab.ru/blog/250831.php

Чтобы не просрать этот пост, добавляйте его в избранное❤️

Автоматизация сигналов из 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'

Налоговый лайфхак или как сальдировать прибыли и убытки у разных брокеров

Друзья, 2020-й торговый год подошел к концу и хочу напомнить вам об одном маленьком лайфхаке, о котором многие не знают или забывают!

Прибыли и убытки у разных брокеров можно сальдировать и вернуть излишне уплаченный налог у прибыльного брокера.

В двух словах как это сделать?

1) Взять справку 2 НДФЛ у прибыльного брокера, где отражена сумма прибыли и уплаченного за вас налога в 2020 году.

2) Взять справку об убытках у убыточного брокера, где отражена сумма вашего убытка за 2020 год.

3) На основании двух этих справок заполнить в личном кабинете налоговой форму 3-НДФЛ.

4) Ждать возврата излишне уплаченного налога на свой счет.

Всем добра! Не теряйте деньги!

t.me/zhukovfinance

instagram.com/azhukov77

tinkoff.ru/invest/social/profile/Zhukovfinance

zhukovfinance.ru


Ответ на «Народные» ОФЗ-н – безрисковая «парковка» денег.

    • 13 января 2021, 14:26
    • |
    • хм
      Популярный автор
  • Еще
Почитал статью Андрея Хохрина. В которой сделан вывод

Сравнивая ОФЗ-н с другими вариантами максимально безрисковой “парковки” денег, сейчас сложно найти более удачный для этого инструмент. Нулевой рыночный риск заметно выделяет его от ОФЗ, а отсутствие налогообложения и более высокие ставки — от вкладов.

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



В целом все верно описано, но почему то «эксперт» забыл о минусах народных ОФЗ, которые кардинально отличают их от вкладов и ОФЗ в доходности.

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


1. По народным ОФЗ нельзя сделать налоговый вычет через ИИС, в отличие от вкладов (по которым можно сделать вычет на взнос по ИИС на 52 тыс руб в год), что дает минус к доходности порядка 1%.

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

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