Does anyone have any experience in algo trading?

does anyone have any experience in algo trading?
weather it be in stocks or crypto or whatever, I have python experience and looking to get into it tell us your experience and if it's worth or bullshit

Attached: 1487104425673s.jpg (250x233, 10K)

Other urls found in this thread:

python.org
github.com/ccxt/ccxt/wiki/Manual
en.m.wikipedia.org/wiki/Coefficient_of_determination
learnxinyminutes.com/docs/python3/
twitter.com/SFWRedditGifs

Yes. You will definitely beat specialized firms who hire people with math/finance/CS phds

I'm not really in the US and I'm assuming my shithole's banks aren't advanced enough that I can't compete with them

Retard, algos are against the market, not major players directly, this is akin to saying there is no point in trading because Bear Sterns exists.

op, depends on the type of trading that you want to make.

1. Microtrades / HFT - pointless unless you are working for a major firm and can lower distance between you and exchange, this is probs what that guy was thinking of when trying to be cool by shutting you down.

2. Market direction - simple trading v. market direction, pretty easy to set up with only a couple of indicators but super prone to getting caught up in bad trades during choppy market conditions. Development for me has usually been 5-10% API/Backend/Indicators and 90% trying to stop bad trades.

3. AI / Neural Net. A lot easier than it looks on the face, the biggest issue these have are with accurate learning because of market flux. Usually quite simple as far as neural net bots go but can sometimes be black magic determining the bots processes unless you can accurately represent this during back testing.

I'd recommend 2 to anyone starting out as it lets you see what kind of data is needed for setting up a bot as well as many trading sites/exchanges with APIs you can hook into. Of the 3 it's also by far the easiest to manage code wise. Do a shit load of backtesting but be aware the data you are using might not act the same way as live data or be handled in chunks instead of as a stream.

Turned 2500 dollars into 500k with a simple mean reversion strategy. Definitely worth it. What exactly do you want to know?

Attached: Screenshot_20190718-180639_Remotix.jpg (1500x1284, 832K)

Damn- I wish this could be my life.

Jeez brah thats dope, how long did it take?

I remember you.

Attached: 1552598490969.png (3821x2029, 644K)

So uhm, whats the strat? Asking for me!

It can.
Learn this: python.org
Use this: github.com/ccxt/ccxt/wiki/Manual
I started trading in July 2017 with the original 2500 and basically rode the market up to 10k since I didn't have any idea what I was doing. Messed around between July up to January 2018 dipping my toes in a few strategies. Finally on January the 6th I hit on a winner and set out slowly automating it. Been iterating my stack ever since. Now I'm on a dozen exchanges and it's refined to the point it's just fire and forget.
Das me! Still going strong
Price dips, I buy. It reverts to the mean, I sell. I think stock boomers call it "fading" so look it up.

> I started trading in July 2017 with the original 2500 and basically rode the market up to 10k since I didn't have any idea what I was doing. Messed around between July up to January 2018 dipping my toes in a few strategies. Finally on January the 6th I hit on a winner and set out slowly automating it. Been iterating my stack ever since. Now I'm on a dozen exchanges and it's refined to the point it's just fire and forget.

Your story is very similar to mine.

Been building scanners using ccxt n all.

Is everthing you do purely automated or are you checking every trade beforehand?

How do you keep from buying dips and then it just keeps falling into oblivion? Do you use a stop loss?

I'd imagine he's scaling in as it drops.

>Your story is very similar to mine.
>Been building scanners using ccxt n all.
>Is everthing you do purely automated or are you checking every trade beforehand?
Right on. I'd say 95% of my trading is automated but ironically 2/3 of my earnings are when I see something juicy enough I take it over by hand. So the bot will trade all the obvious stuff but I have it throw up a chart for everything it's doing so if I happen to be paying attention and it's looking like a situation I can juice some more sats out of myself, I take over. That's usually coins that are going in some kind of new but exploitable pattern the bot isn't programmed for.
>I'd imagine he's scaling in as it drops.
Yeah, that's the part of the strategy I've spent the most time on. Buying "dips" is easy but avoiding falling knives is a bit, um, harder. My system involves a mkving average of daily volume, historical dips of the particular coin, the ratio of dips to actual reversion to the mean. The worse the numbers look, the lower it goes before I buy. I also have it scanning twitter for $COIN and "exit scam" "sec" "delisted", etc.

> Finally on January the 6th I hit on a winner and set out slowly automating it

Was this winner the BB strategy or something else?

>> Finally on January the 6th I hit on a winner and set out slowly automating it
>Was this winner the BB strategy or something else?
It is not. I got a hacked version of gunbot to get well acquainted with that strat among others from an experienced bot writer but found it lacking. There's a lot it doesn't take into account. Consider BB itself. It uses the close for the moving average. Is the close correct? Should it be the low? BB uses 2 sd but is 2 sd correct? Should it be 3? 1? Dependent on the coin? What about the history of the chart, the volume, market conditions, peculiarities of the coin in question? And on and on. Making a profitable bot is more complex than it seems at least for me and off he shelf strategies rarely work.

I meant base breaks not bollinger bands

I watched youknowwho's stuff and some of his ideas did factor into my reasoning though it's been over a year and I've done so much of my own discovery and refining that it's definitely not a direct lineage. And I do a lot of stuff he preaches against like stops and I rarely add to losers. I know his system is good and it works for a lot of people so I'm not saying I diverge cuz anything he's doing is "wrong", I just find for my situation, some of his stuff has been found lacking.

And I should add, I emphatically do not trade "base breaks"

Are you the quickfingersluc strategy guy?

> There's a lot it doesn't take into account. Consider BB itself. It uses the close for the moving average. Is the close correct? Should it be the low? BB uses 2 sd but is 2 sd correct? Should it be 3? 1? Dependent on the coin? What about the history of the chart, the volume, market conditions, peculiarities of the coin in question? And on and on. Making a profitable bot is more complex than it seems at least for me and off he shelf strategies rarely work.

Alot of the logic sounds similar to mine but I'm really using a base break strategy taking into account how often/close it returned.

The hardest part with this method is knowing what exactly to do with losers.

> Yeah, that's the part of the strategy I've spent the most time on. Buying "dips" is easy but avoiding falling knives is a bit, um, harder. My system involves a mkving average of daily volume, historical dips of the particular coin, the ratio of dips to actual reversion to the mean. The worse the numbers look, the lower it goes before I buy. I also have it scanning twitter for $COIN and "exit scam" "sec" "delisted", etc.

This logic even.

Nope bu what follows is a good example of what I look for.
Looking at this pic reminds me of an old strategy I was doing I don't mind sharing. If yiu look in the lower left, there is a terminal with "BTT" in it. I was using the websocket feed from Binance to get the current BTC/USDT price, the price of BTT/USDT and the BTT/BTC markets and comparing them looking for a 3 way arbitrage.
What I was doing was converting the BTT/USDT price over to the equivalent BTT/BTC. Since BTT trades for so low sats, the percentage difference between the ask and bid would be over 5%, say the bid was 19 sats and the ask 20. Well, often the USDT price would be the equivalent of 19.5 sats so if you could buy on the BTC market at 19, sell on the USDT market for 19.5 then sell the USDT back for BTC, you end up with more than you started with.
The trick was to sit on the bid for BTT/BTC for the 24 hours or so it took for the buy to go through then immediately do the arbitrage. I had 10 bitcoins working throughthe cycle at all times and pulled probably half a bitcoin every day or two worth of profit.
It worked but I've moved on to more profitable waters lately though this does give an idea of where my thinking goes.
>The hardest part with this method is knowing what exactly to do with losers.
My method has been to refine the shit out of my buying so the real losers are few and the winners so overwhelm them I don't even care. At this point, many of my winners are 10x so it would take that many losers to even break even. And I win probably 90% of my trades.

>At this point, many of my winners are 10x

Woah, are those just super thinly traded or large timeframes?

And thanks for that strategy, very interesting.

You can even see in pic related though I chopped it out, the left number is 0.000000195 which was the USDT price equivalent of BTT converted to sats. The 0.0007542 was the current USDT price actual and the 0.00073616 was the spot it would cross 0.00000019 equivalent BTC price. Damn that was a good strategy.
A little of both. I'll take the thin stuff only because the bot does all the work so why not. But I look for high volume trades on Binance and get a good 10x every so often on a longer timeframe. That took some work figuring out. I've found the high volume on Binance attracts so many big savvy players, it's harder to come up with something to extract big money from them. Made 2 btc on QTUM recently though so there's a there there.

Forgot pic

Attached: Screenshot_20190724-104542.jpg (1054x260, 70K)

> I've found the high volume on Binance attracts so many big savvy players, it's harder to come up with something to extract big money from them

I know what you mean, I find it so much easier to consistently profit from the low volume shitcoins than any of the high volume stuff on Binance.

I hope you don't mind if I steal this BTT strategy. Might give it a try, and with other low sat coins with a big spread.

I do remember this crossing my mind last time I looked at one of these low sat coins compared to its USD price, actually.

Knock yourself out. Works on HOT too. I don't work or play video games so this is literally all I do all day every day coming up with little market loopholes. I have dozens. Giving a little away isn't a bother

You have my attention, how did you do all this? Did you do all the coding yourself?

But most of your trades are using a mean reversion strategy, correct?

>You have my attention, how did you do all this? Did you do all the coding yourself?
I've been a hobbyist programmer since I learned BASIC on my trs-80 and I've been using the skill to make money ever since. Automated an eBay spam blog affiliate system, automated some FBA Amazon digital goods stuff. Then I glommed onto crypto and wrote the bot from scratch. The trick for me was finding strategies that work by hand then reducing them down to logical steps, being very conservative in the settings and finally iterating. Find a flaw, fix it. A year later it's all a well oiled machine.
My current stack is Python, node, Matplotlib for charts, ccxt for exchange api's, and a liberal helping of websocket and FIX endpoints.
Yeah, I'd say many variations on the theme. I lean on coefficient of determination[0] heavily. Basically a quantifiable way to see how "predictable" the next few prices are based on the very recent past. I find r-squared is a good measure of where the market thinks the price is going so if r-squared is high and you bet against that, you are betting against the market. This is a suckers game cuz the market will slaughter you if you bet against it. I'm looking for stuff the market can't predict but most importantly, I *think* I can. Low r-squared for the market but high r-squared for me iswhere I have an edge.

en.m.wikipedia.org/wiki/Coefficient_of_determination

> I've been a hobbyist programmer since I learned BASIC on my trs-80

You absolute boomer.

> en.m.wikipedia.org/wiki/Coefficient_of_determination

Thanks I will look into this.

Attached: 7a5.jpg (581x230, 26K)

you in any slack or discord channels, the luc ones maybe?

Damn bro, this is nice. You're a legend.

I created an algo based on QFL base breaking strategy that would buy really sold RSIs, and sell when it was crossing the zero line, or maybe +10. The problem was (as the other user mentioned), when BTC took a shit, I'm holding a falling knife that wiped out any gains. This + fees was killing my gains.

But I think you shined the light on that a winning strategy requires more logic than just if this then do this. If it was singular logic, then shit, everyone would have a bot that makes money. But it's certainly more complicated than that, and has to continuously take into what BTC is doing, I'm presuming.

Question for you: Your current strategy, does it have ANYTHING to do with any kind of TA? I've looked at MA crossovers, BB strats, RSI, volume profile, etc. They all have some part of it that can be automated and win, but there are those instances where the market dumps that I can't figure out around. Any advice?

that's awesome I'm glad you made it fren
How frequent are your trades?

Not anymore. My 'tism forbids realtime social interaction you see. I spent a lot of time in the slack when it first started but after learning what I needed to know, I drifted off and haven't been back. I don't even know if my username is still active. I messed around in the Discord too but same thing.
Thanks man. I can't go too deep into the nuts and bolts of my current main money maker but I'll offer what I can.
The bottom line for avoiding getting killed on big dumps is a combination of many small things. Always monitor what your bot is doing. Every move mine makes, it throws up a chart with the orders clearly marked, the chart has 1 hour candles for 60 days and 1 minute candles for 120 minutes all on the same chart. For example, pic related, you can see a big grey bar. The hourly to the left, the minutes to the right. If a chart pops up and the bot buys but I look at it and it looks "wrong", I hit the "CANCEL BUYS" button and do a post mortem. Then add a new rule so it doesn't happen again. If you look at that chart, there is a tiny little horizontal line showing where the last tick was so when the bot buys, if it does, I can deduce what the logic behind it was. Again, I no likey, it gets cut out for the future. Scrape Twitter for scam, delist, arrest, hack, double spend, whatever you can think of. If you get a hit, blacklist the coin immediately. I also wrote an Android app for my watch that alerts me whenever the bot buys or sells, at what price, and at what volume. I don't like it, it's cancelled immediately.
Be very aware of volume. I never go in more than a certain percentage of a moving daily average of the volume of the coin cuz I found even if the buy was good, I often couldn't get out. I mean, this stuff goes on and on. For market dumps, keep track of overall market volume, if it spikes, have the bot lower its buys. Maybe try only buying coins that trade on multiple exchanges. Watch for coins that only drop on a single exchange.

Attached: Screenshot_20190724-114619_Remotix.jpg (979x1997, 548K)

In the last 24 hours I've traded 6 coins between yobit, hitbtc, and livecoin. I'd say that's fairly representstive though sometimes it gets up to 20 or 30 coins a day but I can't remember the last time I did less than 2 or 3.
I'm on 12 exchanges with about 28000 pairs last I checked including 8000 stocks I trade on IEX with similar strategies. I build all my own charts from raw ticks and keep the whole thing in redis. Most of the data gets shuttled back and forth with zmq.

One other thing you may consider is, unlike all other charting software, I always start my y-axis at zero cuz I wanna see how far this coin can really drop. It's psychological but it seems to help.

Damn wish I had the technical know how to write algos and bots alas I'm just a pleb

why are you helping newbies doesnt more people doing this ruin your profit a bit

from what I understand the real hard thing isn't really the coding part because that's just simple automation, you first need to figure out a strategy and test it manually if it works > automate it

How long do you think it wil take to create a system like yours for someone without any coding experience?

>why are you helping newbies doesnt more people doing this ruin your profit a bit
It can but here's the red pill. While I'm sure everyone in here right now are exceptions, most peopls even if handed a sure fire winning strategy will still find a way to screw it up and relegate their efforts to mere added market liquuidity. And lemme tell ya, I could use the liquidity. Another thing is, I always have 1 premier strategy and a dozen 2nd and 3rd tier strategies. I've been doing bot q&a on Jow Forums since the beginning but I usually pop up around the time my latest strategy has proven itself so I don't mind discussing the older stuff. It's not that the older stuff doesn't work, it's just that I'm on to better things. The last time I was here it was right after I moved on from a profitable run at 3-way arbitrage on HitBTC. That exchange has a FIX connection, extremely low minimum trades, and "fill or kill" order types making it tailor made for 3-way arb. I did it, made bank, moved on and then shared with Jow Forums.
Not as long as you think. The mechanics of programming are fairly simple. learnxinyminutes.com/docs/python3/ has you covered.
The intuition necessary to know what works is the hard part. I'd suggest get a good manual system then work on automating that.
>from what I understand the real hard thing isn't really the coding part because that's just simple automation, you first need to figure out a strategy and test it manually if it works > automate it
Yup

I have taken coding classes too and always did well in them but it's the nuts and bolts of this that always get me, like how to use the APIs and how to set the bot up with them

is there hope to make a good living off bots for a poorfag in his late 20s with basic coding skills like c++ by the time i reach mid 30s or will it be 'too late' from a market perspective by then

also did your bots 'predict' this dump to 9500 that just happened? pls be honest

>I have taken coding classes too and always did well in them but it's the nuts and bolts of this that always get me, like how to use the APIs and how to set the bot up with them
Google ccxt manual. ccxt is a library that abstracts the apis of a bunch of exchanges. The documantation has great examples to get you started.
You can Google around and find umpteen million naysayers saying you can't beat the prop firms or HFT has ruined retail trading and on and on. People were preaching this 10 years ago. And their predecessors before them a hundred years ago. They're all wrong. Is it hard? Yes. Is it something most people fail at? Yes. But if you can simply come up with a manual strategy that consistently works, you're 90% the way there.
Absolutely not. That was the market talking and nobody other than insider whales who literally make the market knows what it's going to do. Don't try to beat the market. Look for mistakes other traders make. Those other traders making mistakes are not the market, they are the ones trying to beat the market. Hunt them and exploit their mistakes before the rest of the market does. May sound vague but it's up to you to reify that in your own way.

> I build all my own charts from raw ticks and keep the whole thing in redis

Are you using ccxt for the raw ticks? Pulling the order data or something?

Websockets, FIX or bust. Some exchanges (Exmo for example) don't have a public ws endpoint so you gotta do some digging but it's always there.

So you're implementing each exchange yourself using WS or am I missing something in CCXT?

i understood clearly thanks based bot boomer

You wanna use public and private ws endpoints for as much as they're worth. Hitbtc and Livecoin for example let you make orders via websockets so you can avoid the delay of initiating a tcp handshake (saves ~300 milliseconds). When that's not available, you fall back on ccxt. If there's an order type you want but ccxt doesn't support, you can send parameters or just use the exchange api directly. Some exchanges like tradesatoshi don't work with ccxt so I use their api directly.

Ah lovely, thanks alot.

OP you seem to have an actual education, something 99 percent of this board lacks

Hey user, hope you are well. Last time you recommended me a great free scanner, but I see it has been taken down. Any other free scanner worth using? Is there any way to contact you?

Oh wow, it sure has. I can't think of any free ones right now but give me a throwaway email and I'll throw something up.

Attached: Screenshot_20190724-125840_Chrome.jpg (1600x2560, 279K)

[email protected]

Thanks a lot man. I am happy to hear you have been able to grow your stack so much since last time. Your last thread really inspired me, I think you are smart as fuck and deserve to make it

Thanks man, it's been a journey. I'll have something up soon. What exchanges are you needing the scanner for?

I only really had a chance to briefly try cryptomarketscanner, but I remember it had binance, poloniex, finex, liqui and hitbtc. Any of those would be nice, but feel free to recommend any exchanges you think are good. Don't want to use CBS because of what you told me about the dev

Cool man. Liqui is shut down but if you are trying to build a small account, yobit has what you need. Tons of shitcoins with wild swings. Getting lucky on any given day and turning 0.1 btc to 1 btc is a thing there.

Cheers for taking the time to post man, really good info in there!

You don't happen to have any links to communities? I've been flying solo for a year on this coming from a CS background so i've ended up writing my own API hooks so would really have appreciated something like ccxt.

I'm off to prototype a mean reversion strat now tho!

Thanks for the tip man, yobit is one I have overlooked in the past.

The best HFT firms I’ve seen use web scrapers to get around API limits.

Can you elaborate more on what you mean by ‘other traders’ mistakes’ and trying to beat the market? It sounds like you’re saying one should adopt a momentum-based strategy and not try to catch a falling knife, or sell a rocket ship as it’s just taking off. Is that right?

I wish that I knew you

What do you mean the USDT market would often be at 19.5 sats? Are you saying that the BTT/BTC market didn’t line up with the BTT/USDT market? That sounds like free money so how did no one beat you to the punch?

>tkinter
Absolutely disgust

>t. PyQt Chad

Attached: UI.png (910x490, 72K)

10x your crypto with moon3d. bonus schemes awaits

Did algos for investment banks

Later did stuff for hedge funds just connecting them into banks

Algos don't help unless you're a percentage of the market.
Which you aren't OP.

What you need is a crystal ball to know when to buy and sell on the daylies. Or put some effort in and do some reaseach figuring out true value and hold long term.

dum kids

>Algos don't help unless you're a percentage of the market.
Which you aren't OP.

He is if he's trading 2BTC volume a day shitcoins.

I used to participate in some bot making communities but I'm pretty sure they're defunct now. Maybe try looking at the pull requests and bug reports on github for some of the open source bots and see if you can link up with people there. And good luck with your strat!
I look at it like this, they say the market is "efficient" and it mostly is so if you try to outguess the herd, you're probably missing something. When the momentum is pushing the price one way and you try to fade it (without some unique insight!) thinking it can't go any further, you might win this time but in the long run you get killed. The key is to look for people "betting against the herd" and explicitly bet against them. It's up to you to figure out how to do that but it's the core of many great strategies. It gets complicated second and third guessing the market. Recursive in the extreme but it's what you have to figure out. If a simple formula could do it, we'd all be rich.
Well, think about it. The USDT price has to be somewhere between the bid and ask for the BTC side. If it wasn't, that would be an instant arbitrage and somebody would take it. Since it has to be between the bid and the ask, you look and see where it is. If it is at 19.5 and you get an order through on BTC at 19 then you have free money. The trick is sitting on your order for the day or two it takes to go through and hoping the USDT price is above the BTC bid at the time your order goes through. I'd say half the time it is. So the money is yours. All I can say is try it yourself. Hell, look and do the math right now
Right now the BTT bid is at 8, the ask is at 9. The USDR price is 0.0008510. Converted, that USDT price is 0.000000088 meaning the bid is going for a 10% discount at this very moment. Buy at 8 sats, sell for 0.0008510 on USDT, sell the USDT for BTC and for your trouble, you pocket close to 10%. The math doesn't lie.
What does your hedge fund experience say about that?

Pic relate

Attached: 20190724_145218.jpg (2528x1402, 1.57M)

go work for a firm like bitspread. i've done work for a guy called cedric there. you'll learn more working a month there than pissing around with 5btc everyday for the next year. and you'll earn more money too.

What timeframe do you typically use for you indicafors? Daily? Intraday?

Yeah, PyQTbis the shit. I've been trading BTC directly by hand lately but I have so many exchanges I need a tool that abstracts over it all so I can just treat it as one big stack. I hit sell fo x amount and the tool finds the lowest price behind the scenes, that kind of thing. I'll be using PyQT since there are some widgets I need there.

Interesting idea. I'd love to make something like that and sell it

Do you make and use your own tools basically?

This is probably good advice. I wonder what I don't know that I don't know. I've been edging over to the stock market lately too and things are working out. Just need to cross the hump that gets me to 7-8 figures. I'm getting closer.
For the big picture, I use hourly. When a coin gets interesting, the bot drops down to minute candles, when it does the last check before a buy it goes tick by tick, applies some statistics then if everything is well with the numbers, twitter, etc. the trigger gets pulled.
Yeah, I make all my own stuff. Sometimes I'll go github shopping, find something interesting and reimplement it for myself with some upgrades.
I try to keep my counterparty risk as low as possible so I stay spread out on the exchanges, etherdelta, wallet, etc. but it's a bitch trying to swing trade bitcoin lately and keep everything in mind so the abstraction tool became a necessity. Prototyped it a few days ago. It works even now but it needs some polish bad. Pic relate

Attached: Screenshot_20190724-151354_Remotix.jpg (1363x769, 253K)

What do you use for the graph? Been wanting to put one in my app and nothing even comes close to Tradingview. Maybe pyqtgraph

And do you have any javascript experience? Why do you use python over something like a React app or w/e

First of all, congratulations Fren. You made it. I wish i could be in your shoes.

How did your life change with all that money?

Attached: 1549638381751.jpg (1763x2034, 952K)

Word. Another question: do you sit in USD and use leverage to buy/sell or do you hold a stack of every coin you're trading so you don't have to trade on margin (like if you were doing 3 way arb for faster execution)?

>What do you use for the graph? Been wanting to put one in my app and nothing even comes close to Tradingview. Maybe pyqtgraph
I use matplotlib. It's not the fastest thing in the world but it has every feature you could ever want. It updates in real time, has built in widgets, has a great candlestick feature, gives you easy insight into events, where you click, which button, on the graph, x/y coordinates. I just wire up the event to whatever script and start clicking. It's beautiful.
>And do you have any javascript experience? Why do you use python over something like a React app or w/e
I've implemented my system in Javascript and Go out of pure boredom but Python has so many great statistical tools and numpy I keep coming back. I tried d3.js with node and it's cool but I like matplotlib better.
I'm still on the grind but I worry a lot less. Especially after I started socking coins away in an offline wallet.
I never use margin. Everytime I try I get my ass handed to me. The closest I get to that is daytrading leveraged ETF's. Trading shitcoins without leverage is easy since I'm always in and out quick. Bitcoin itself however takes practice and lots of chart reading to get the right mix of BTC and USDT to not just get beaten by the market itself a it's something I've only gotten good enough at fairly recently. So far so good though.

Yes, I've definitely noticed the difference. The life has just been drained out of alts since bitcoin shot up. I noticed the same thing in the Summer of last year too so it's either a cyclical thing or a hell of a coincidence. The bright side is the thing last year blew over so hopefully this one does too. In the meantime, swinging bitcoin among some other things I'm doing has picked up a lot of slack for me.
Also, note that different exchanges trade very differently so maybe expand a bit. Yobit is highly recommended as it's still trading like before this recent malaise.