7 ms·
Gryphon: An open-source framework for algorithmic trading in cryptocurrency
- gcb0 7y ago1. implement a real algo that depends on known behaviour of some players. 2. release public algo that implements that known behaviour your main algo expects 3. ??? 4. Profit!
- reso 7y agoTotally fair to wonder that, all I can say is we make it clear the built-in algos are just for demo/inspiration purposes, shouldn't be run live with any expectation of profit. The point of Gryphon is to use the framework to build/run your own strats much faster than if you had to build everything yourself.
- rolltiide 7y ago> all I can say is we make it clear the built-in algos are just for demo/inspiration purposes, shouldn't be run live with any expectation of profit Boilerplate CYA that counterintuitive undermines confidence in the code while you expect some people to see through it and use it anyway Thats all the experience I need, cloned
- Havoc 7y agoWow. That’s pretty cool. Been toying with the idea of algo trading on stock market. Nice to have a reference work
- markbnj 7y agoI've been playing around with using lstm recurrent nets to find patterns in forex trades, with no real expectation of anything other than learning about recurrent nets (and td convolutional nets). I was able to access 15 years of historical tick data. I would imagine lack of historical pricing data would be an issue for any machine learning approach to crypto trading. Even with 15 years of daily prices I only have ~5500 samples per major currency pair. I've toyed with learning off hourly prices rather than daily, and I've also thought about creating more samples by shifting prices up or down, since perhaps the general patterns would be the same.
- ska 7y agoI've also thought about creating more samples by shifting prices up or down, since perhaps the general patterns would be the same. This, like all synthetic data approaches, is fraught with ways to trip yourself up on generalization.
- fwip 7y agoPlease don't use code formatting for quotes - it's very difficult to read a long, non-wrapping line on a number of devices, especially mobile.
- markbnj 7y agoThat's true, of course. If the technique worked here then it would be because there really are location independent features that can learned. I view it as similar to translating and transforming images in the MNIST digit set to account for the various ways the feature you're searching for can be spatially oriented. Of course I have no idea if this holds true and will work for pricing data.
- ska 7y agoRight, the thing about applications like the digit set and similar OCR problems etc., is that we can independently generate a model of "acceptable" translations/rotations and validate it reasonably easily because we understand the domain well (not that you can't cause trouble this way). This certainly isn't true across data sets.
- 7y ago
- whalesalad 7y ago"trade billions" + `pip install` -- all the rope to hang yourself with! In all seriousness this looks like a pretty comprehensive offering for open source, looks cool.
- pedrovhb 7y agoA couple of years ago I made a bit of cash by arbitraging within an exchange. It had both BTC and fiat pairs for all other cryptos, and in some cases buying one, converting to the other and then selling back could net a profit even with fees. They'd occasionally ban my IP (but not API key, for some reason) I assume due to lots of order book info requests, even though my bot traded enough volume to certainly more than make up for them in fees. Eventually it stopped earning anything. I assume the exchange started doing it internally themselves and the profit was had before the orders hit the books.
- nostrademons 7y agoCould also just be competition. The thing about arbitrage opportunities is that they're usually arbitraged out of existence once enough people become aware of them. All it takes is one faster arbitrage bot front-running you and you won't see any more arbitrage opportunities.
- rolltiide 7y agoAnd the exchanges. This aint regulated securities or commodities markets and there is serious front running happening
- tastyfreeze 7y agoI had to stop running my arbitrage bot because it was getting beat by other bots. All it takes is somebody closer to the exchange to get an edge in the arbitrage game. It was fun but there wasn't enough revenue to justify collocated hosting.
- reso 7y agoHey folks, I'm the primary maintainer of Gryphon. The backstory here is: I was one of the founders of Tinker, the trading company that built Gryphon as our in-house trading infrastructure. We operated 2014-18, starting with just a simple arbitrage bot, and slowly grew the operation until our trades were peaking above 20% of daily trading volume on the big exchanges. The company has since wound down (founders moved on to other projects), but I always thought the code deserved to be shared, so we've open sourced it. Someone trying to do what we did will probably save 1.5 years of engineering effort if they build on Gryphon vs. make their own. As far as I know there isn't anything out there like this, in any market (not just cryptocurrencies). Hope you guys like it!
- monkeydust 7y agoWell documented. Looks like a nice way to learn about market making in a real life situations with small fractions of bitcoin. Curious to know if someone takes it for a real drive in a production environment.
- reso 7y agoThanks! I hope they do. I had considered adding a 'reading list' to the docs for people who are new to trading, so this could be used as a teaching tool (or just to make using it easier). I'll bump that up the priority list.
- monkeydust 7y agoDitto. Heck you could combine all of it and make a nice udemy course for some extra $ if you wanted to.
- hmd_imputer 7y agoWhy did you choose python 2.7?
- reso 7y agoThat's holdover for when the project was started years ago. It's a focus for this year to migrate.
- deleted 7y ago[deleted]
- atemerev 7y agoNice to see fellow market makers! New code releases are always a good thing; perhaps I’ll do something too in the near future.
- dinhnv 7y agoThis is the thing I've searched for many days. Thank guy!
- xvilka 7y agoIs there something like that, but with more predictable languages like Rust[1], or OCaml? I wouldn't trust my money for dynamic typing. I recently asked the same question[2] to the Futu broker[3]. Sadly no answer. I wish more quant companies would pay attention to the predictability of their own code and external APIs. For example using Imandra[4] to reason about their own code. Using their own protocol language specification[5] they created verified FIX library[6]. P.S. Also you might want to add that framework in Awesome Quant list[7]. [1] https://internals.rust-lang.org/t/proposal-business-applications-working-group/10400 https://internals.rust-lang.org/t/proposal-business-applicat... [2] https://github.com/FutunnOpen/futu-api-doc/issues/2 https://github.com/FutunnOpen/futu-api-doc/issues/2 [3] https://www.futu5.com/en/ https://www.futu5.com/en/ [4] https://imandra.ai/ https://imandra.ai/ [5] https://docs.imandra.ai/ipl/ https://docs.imandra.ai/ipl/ [6] https://docs.imandra.ai/fix-engine/ https://docs.imandra.ai/fix-engine/ [7] https://github.com/wilsonfreitas/awesome-quant https://github.com/wilsonfreitas/awesome-quant
- AlexCoventry 7y agoYou'd probably derive more benefit from typing this with mypy, instead of rewriting in a statically-typed language
- keyle 7y agoI guess the original author 'moved on to other projects' because they couldn't make a stable income. We've all tried it, I personally couldn't make money after thousands of nodejs lines against Binance's API and many 'clever' ideas. Anyone out there making a living from crypto-algo-trading?