• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    KRISHNAAutomatický trading/boti/burzy
    Rád bych tu rozebíral strategie a technické řešení automatického tradingu
    rozbalit záhlaví
    SOONIC
    SOONIC --- ---
    GIOMIKY: Je dobré, že historická data nabízí různe konstalace bitcoinového trhu, takže je na čem testovat pravidla obchodování pri různych trendech.

    pak je důležité zvolit si škálu, na které obchoduju.
    SOONIC
    SOONIC --- ---
    GIOMIKY: To je taky možnost, mít různa pravidla pro různe trendy. Asi je i správná. Vkládá se tam ale další "kurvítko" zakategorizování současného trendu pro výber pravidla pro obchodování.
    GIOMIKY
    GIOMIKY --- ---
    Otazka je, jakou strategii implementovat. V silnem uptrendu, ktery prozil btcusd v minulych mesicich stacilo nejspis nakupoval pod klouzavym prumerem, ale obavam se, ze tyto casy jsou jiz za namy.
    HANT
    HANT --- ---
    KRISHNA:
    SOONIC: r-ko ma na ruzne trading indikatory skvelou knihovnu quantmod, ktera vychazi z ttr. prvni je dobra na ruzne grafy a vizualizace, v druhe jsou ty indikatory (funkce) jako takove (nebo alespon vetsina z nich). ja zase delal jen minimalne v octave, ale myslim si, ze oboji bude v principu dost podobne. octave je mozna vic pouzivany v machine learning komunite, ale rozdil mezi ml a statistikou je mensi, nez by se mohlo zdat.
    SOONIC
    SOONIC --- ---
    našel jsem nějaký starý výstup z mého backtestování pravidel pro obchodování. křížkem nakupuju, kroužek prodává.
    Nezabýval jsem se objemem, to se asi backtestingem beztak nedá řešit, protože nějaká má akce na burze by vyvolala jinou reakci. Ale beztak nemám k dispozici takový objem, abych burzu nějako významně ovlyvňoval.
    http://soonic.cesnak.org/btc/temp/graf_tema.png

    SOONIC
    SOONIC --- ---
    KRISHNA: to se dá vyhodnotit, jestli se to s tim objemem oplatí. Započteš fees a uvidíš. Je možné, že se oplatí s malým absolutním ziskem. ale proč to nevzít ?
    Právěže co sleduju, tak jsou to příležitosti, kdy vložíš třeba 0.1B a vybereš 0.101B, co je při dnešním kurzu cca 20kč, kdy se poštěstí pár krát za den, třeba 10x, máš fajn příjem BTC pomimo. Nikdy tyto příležitosti nejsou v jednotkách bitcoinů. I když je, tak ti ten objem neprojde přes tu další směnu. To se vša kdá všechno určit a dělám to.
    KRISHNA
    KRISHNA --- ---
    SOONIC: No on je ale právě problém, že ti bot třeba vyhledá arbitrážní příležitost, ale pro měny (třeba) USD -> LTC -> BTC -> USD je třeba jenom 0.1 LTC (kterou tam pravděpodobně nacpal nějakj bot) za výhodnej kurz a pak další nejbližší nižší je o několik % jinde a pustit se do obchodu s 0.1 LTC by se nikdy nemohlo vyplatit.. :-/
    ARIAEL
    ARIAEL --- ---
    SOONIC: Ja by jsem si tipnul ze hlidaji a pouzivaji, ale nechteji je sezrat na 100% protoze by tim odehnali cast obchodniku. Takze je to spis o tom co jim prinese vic penez.
    SOONIC
    SOONIC --- ---
    No a ještě mám takové filozofické otázky,
    - jakto, že si tydle příležitosti arbitráže v rámci jednoho systému nehlídají burzy samy
    - určitě nejsem jediný, kto je hledá a zobchoduje, tak proč ty příležitosti pořád jsou
    SOONIC
    SOONIC --- ---
    KRISHNA: To x coinů za y cenu, jak jsem četl nedávno na fóru jak byla debata o tom, jak cryptsy odbavuje ordery, tak nevím jak se k tomu postavit. Je víc možností
    - když najdu arbitrážní příležitost, tak vemu jen to, co nabízí první ordery v objemu nejmenšího objemu
    - když najdu arbitrážní příležitost, vemu všechno co je v cestě, dokuď to je výdělečné
    - budu opatrný a vemu jen část toho, co nabízí první ordery, kldině víc krát po spobě, dokuď šance trvá
    Je fakt důležité z hlediska rýchlosti, jak se ke zadaným orderům staví burza.

    Octave jsem hodně ocenil za práci s vektormi. Věděl jsem, že to umí a je v tom rychlý, no moje chápaní to nedávalo efektívně v tom pracovat, až se mi to povedlo. Je fakt masakr, např. closing prices celého roku třebars hodinových dat nacpat do jednoho vektoru, určit si stejně veliký vektor hodnot EMA, vymyslet si pravidlo a vygenerovat jedinou matematickou operací další vektor boolean vektor, kdy je dobré mít nakoupeno a kdy ne. Pro parametrickou studii pravidel neskutečné zrychlení v porovnání s prácí prvek po prvku. U těch hodinových dat jednoho roku bylo spracování 8760 operací nahrazeno jedinou. Namísto loopu přes 8760 prvků to bylo jenom C=A>B; třebars.

    exitujou knihovny s funkcema pro technickou analýzu
    TA-Lib : Technical Analysis Library - Home
    http://ta-lib.org/
    výhodou je, že funkce jsou prý už optimalizované. No právě jsem tam jednou našel nějakou, ku které byl vygoogolovaný kód o hodně rychlejší. Je to asi tim, že jsou často psané komplexněji, než zrovna využiju.

    R vím, že je, nikdy jsem v něm nic nedělal. Zatím jsem octave nedohnal na konec. Možná se bojím u R toho slova statistical, kde vůbec nejsem doma ;)

    KRISHNA
    KRISHNA --- ---
    SOONIC: Nad tou meziměnovou arbitráží v rámci jedný burzy už jsem taky přemejšlel, dokonce jsem to i začal psát, ale vždycky jsem se do toho dost zamotal, právě jsem měl problém s market depth u nákupu (x coinů za x cenu, y coinů za vyšší cenu a tak dál a dál a nedokázal jsem nějak provázat jednotlivý měny tak, aby mi to hodilo výsledek, kdy se ještě vyplatí nakupovat a kdy už ne), ale to je spíš mojí matematickou zakrnělostí, až se někdy naštvu, tak to dodělam :))

    GNU Octave vypadá moc hezky, prozkoumam, děkuju.

    Dostal jsem taky doporučení na jazyk R
    The R Project for Statistical Computing
    http://www.r-project.org/

    Že prý se na trading opravdu hodí

    Taky bych pro začátečníky doporučil scripty od tohoto člověka:
    https://github.com/alanmcintyre

    Hrozně se mi líbí předevšim compute-account-value.py, kterej dokáže přesně spočítat aktuální stavu účtu na BTC-e v $

    SOONIC
    SOONIC --- ---
    Už jsem si napsal pár skriptů pro automatické obchodování. Nejsem programátor, vzorové API ztáhnu z githubu a pak samotný script píšu v bashi a úspěšně na matematické operace využívám octave.

    Kdysi, v časech funkčního aurumxchange, jsem skriptem realizoval meziburzovní arbitráže, akorát to dost lagovalo u aurumxchange (několik dnů), tak tohle padlo

    Další pokus byl backtesting různých pravidel generujících signál pro nákup a prodej. Něco se povedlo, dosahoval jsem pravdepodobnost výnosu vic než 90% u některých pravidel. Je dobré vzít si historické data s různyma trendami, a sledovat, jak se bot správá. U pravidel jsem hledal různe parametry, které ovlyvňovali profit, třeba jako průnik dvou různých EMA, tak jsem věděl, na skoumaných datech, které kombinace EMA mají nejvyšší výnos a pravděpodobnost tohoto výnosu. Nevím už proč tenhle skript neprovozuju... Možná právě taky, že s odstupem času, když do toho člověk nekouká, tak se v tom programu pak tak dobře nevyzná.

    Teď si frčím se skriptem, který v rámci jedné burzy, která obchoduje více měn, vyhledáva možnost arbitráže. Sleduji nabídky, třeba BTC > LTC > XPM > BTC. Když je zisk větší než vklad utakového řetězu, zadají se příkazy pro nákup/prodej nabízeného objemu za nabízenou cenu u každé měny. Problém je většínou rýchlost spracování orderů. Odbavují se postupně. Stává se, že než se uskuteční můj obchod, tak už je nabídka změněná a mě tam zůstane nakoupeno nějaká měna, kterou pak zrejmě prodávám bez zisku. Zisky jsou omezené objemem nabídek, takže žádné velké transakce se tam nedělají, ale jak se říká, když neteče, až aspoň kape.

    Co bych potřeboval vyřešit, tak je právě rýchlost zadání všech objednávek. Nejlepší by bylo rychlé odbavení zadané objednávky. A to se liší od burzy k burze. Ve QtBitcoinTrade jsem viděl zobrazvat rýchlost lagování API. Jak jse to měří ?
    GIOMIKY
    GIOMIKY --- ---
    Ja nemam zadnyho profitabilniho bota, ale kdybych do neceho sel, tak bych to napsal v mql4 pro metatrader. Jsou tam notifikace indikatory, podpora dll. Obecne se jedna o pomerne vyspele prostredi pro implementaci obchodnich strategii.
    F0B1C
    F0B1C --- ---
    o vanocich jsem nad necim podobnym uvazoval (py), chtel jsem to testovat na doge :) nemam problem s programovanim, spis plavu ve strategii tradingu
    KRISHNA
    KRISHNA --- ---
    No ten muj bot asi neni uplne pro verejnost, neni uplne easy ho zprovoznit. Co se monitoringu propadu tyce, tak s tim problem nemam, mam na to chcecky v nagiosu, co mi muzou posilat smsky, v posledni dobe se mi ale vic osvedcily aplikace pro android
    KUBZ
    KUBZ --- ---
    Dobrej napad, pripojil bych se k testovani. Myslim, ze funkce ke sledovani prudkeho propadu (stop loss na Krakenovi) by byla moc fajn a nemusela by byt az tak tezka.
    KRISHNA
    KRISHNA --- ---
    Tak zatim strucne, napsal jsem si jednoho bota uz letos o prazdninach a uspesne ho zprovoznil na btc-e.com. Predem podotykam, ze s tradingem nemam prakticky zadne zkusenosti, az na ty, co jsem ziskal prave na btc-e obchodovanim s bitcoiny. Zacal jsem v tom hledat pravidelnosti, napsal bota a az vlastne potom zacal zjistovat dalsi informace (treba co to jsou indikatory :))

    Asi tak stejny zkusenosti mam s programovanim. Nikdy jsem se nic neucil, ale v praci me donutili se zacit orientovat v mysql, bash, python/perl

    Muj bot tedy dela to, ze kontroluje cenu urcity meny a dela jeji aritmetickej prumer za dobu 30 minut (podle configu, u nekterejch men s mensim volume mam delsi interval). Pokud se stane to, ze posledni aktualni cena je nizsi nez 0,7% od spocitanyho prumeru, tak bot nakoupi (mnozstvi podle configu). Pokud se tak stane i dalsi minutu, tak nakoupi znova a takhle nakupuje tak dlouho, nez mu dojde limit, stanovenej v configu pro urcitou menu. To co udela s kazdym nakupem je to, ze k nemu pripocita 0,8% a rovnou nabidne k prodeji.

    Mezi cca srpnem a 1. listopadem (kdy na btc-e zmenili API a bot prestal fungovat spravne (nedokazal poznat, ze se vyplnila nabidka/poptkavka, protoze zrusili method-OrderList), vydelal tenhle bot asi 200$. Na BTC-e uctu jsem mel pro tohoto bota vyhrazeno asi 1000$.

    Potom jsem mel nejak moc prace a nemel sem cas bota opravit, mezitim byla megabublina s LTC, na ktery jsem megavyvaril, protoze jsem vsechny prachy mel v LTC a minulej tejden jsem se konecne dostal k tomu, abych ho zase zprovoznil.

    Musim rict, ze dve novy funkce BTC-e API (TransHistory a TradeHistory) nechapu, nechapu jak funguji. Resp. mi prijde, ze jejich parametry (primarne mi jde o from_id a end_id) nefunguji spravne. Je tam nejaka nova zakonitost mezi orderid, ktere se zmeni po tom, co se vyplni nabidka/poptavka, uz jsem to zkoumal docela dluoho a zatim to furt nechapu presne. Chape nekdo? :)
    Takze jsem prisel o dulezitou funkci, zruseni nabidky bota po tom, co dam cancel order pres webovy rozhrani. Coz mi ani nevadi, protoze daytradingu se chci venovat co mozna nejmin, protoze dlouhodobe na nem spis prodelavam.

    Nicmene, bot ma ted k dispozici 7000$ a za posledni tri dny vydelal 60$, coz myslim, ze neni zly, zvlast vzhledem k tomu, ze obchoduju pouze BTC/USD + LTC/USD a na burze je nejvetsi nuda, za posledni dva mesice.

    Mam v hlave spousty uprav, jak bota vylepsit. Treba dynamicky menit config podle volume a min/max ceny za poslednich 24 hodin. Dal chci napsat dalsiho bota pouze na RSI a MACD

    Taky jsem koupil bota od Haasonline.nl, koupil jsem ho uz asi pred 4 mesicema, ale zatim se mi nepodarilo ho spravne nastavit, aby vydelaval nejaky zajimavy penize, mate nekdo zkusenost?
    Pripadne jinej, osvedcenej funkcni bot?
    KRISHNA
    KRISHNA --- ---
    Rad bych se tu zabyval automtickym tradingem, boty a jinou automatizaci nakupu na burze.

    Zrovna v tuhle chvili sedim v internetove kavarne s prisernou klavesnici, ale hned, jak se dostanu ke svemu PC, tak se trochu rozepisu o svem dosavadnim know-how.
    Kliknutím sem můžete změnit nastavení reklam