# Getting Started with High Frequency Finance using Crypto Data and Julia

**URL:** https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730
**Category:** Finance and Economics
**Tags:** blog-post
**Created:** [June 29, 2021, 7:28am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730 "2021-06-29T07:28:21Z")
**Posts on this page:** 12
**Page:** 1

<div class="post-metadata">

### Author: ![dm13450](https://avatars.discourse-cdn.com/v4/letter/d/eada6e/32.png) [@dm13450](https://discourse.julialang.org/u/dm13450)
#### Post date: [June 29, 2021, 7:28am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/1 "2021-06-29T07:28:21Z")

</div>

I’ve written about how to use my CoinbasePro.jl package in Julia to get started with some concepts in high frequency finance.

> **[Getting Started with High Frequency Finance using Crypto Data and Julia](https://dm13450.github.io/2021/06/25/HighFreqCrypto.html)**
>
> Crypto is making finance democratic. My PhD was originally going to be on the limit order book and modeling events that can change its state. However, I just couldn’t get the data. Now, anyone can access different exchanges limit orders books with...

Happy to answer any questions around the subject for anyone interested!

---

<div class="post-metadata">

### Author: ![colintbowers](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/colintbowers/32/8033_2.png) [@colintbowers](https://discourse.julialang.org/u/colintbowers)
#### Post date: [June 30, 2021, 5:11am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/2 "2021-06-30T05:11:45Z")

</div>

Awesome work. Starred in github. I often work with order books on equity markets and would love to play around with this. I’ll definitely have a look in a month or two (a few work commitments I need to get under control first).

---

<div class="post-metadata">

### Author: ![AMJ](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amj/32/214096_2.png) [@AMJ](https://discourse.julialang.org/u/AMJ)
#### Post date: [July 1, 2021, 3:07pm UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/3 "2021-07-01T15:07:52Z")

</div>

Thank you for the package and the nice write up.

Would you use Julia for HFT in production ? From what I have gathered gaining access to live data at 50~100 milliseconds latency is doable without colocation, so ultra HFT is kinda out of window. The robotic project that was done in Julia, they had achieved 1 millisecond loops with out calling GCC (if I’m not mistaken) so doing 50 milliseconds is doable in HFT. The question remains is Julia a viable option for live high frequency trading ?

---

<div class="post-metadata">

### Author: ![dm13450](https://avatars.discourse-cdn.com/v4/letter/d/eada6e/32.png) [@dm13450](https://discourse.julialang.org/u/dm13450)
#### Post date: [July 1, 2021, 8:39pm UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/4 "2021-07-01T20:39:02Z")

</div>

Have you got a link to the robotic project please?

I don’t think Julia would be faster than the custom hardware the HFT firms use, but it would be interesting to see how close Julia could get.

---

<div class="post-metadata">

### Author: ![luke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/luke/32/24341_2.png) [@luke](https://discourse.julialang.org/u/luke)
#### Post date: [July 2, 2021, 6:34am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/5 "2021-07-02T06:34:05Z")

</div>

Really cool writeup, thanks for bringing together a number of interesting concepts and putting them in layman’s terms! I am enjoying starting to poke into the papers you referenced.

---

<div class="post-metadata">

### Author: ![luke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/luke/32/24341_2.png) [@luke](https://discourse.julialang.org/u/luke)
#### Post date: [July 2, 2021, 4:21pm UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/6 "2021-07-02T16:21:36Z")

</div>

> Coinbase also let you obtain the last 1000 trades, which can provide all sorts of insights. Echoing the introduction, you would never get this kind of information for free for any other asset classes.

Also, you may well already be aware of this, but the IEX exchange publishes its data feeds freely, so it is possible to get similar information on US equities these days. According to their own website, IEX only runs 2-3% of daily trading volume, a fact that deserves a caveat, but it’s not like every crypto trade is going through Coinbase Pro, either.

If you want to pull some historical data from IEX using Julia, I’m working on a little package for that: [InvestorsExchange.jl](https://github.com/lukemerrick/InvestorsExchange.jl)

---

<div class="post-metadata">

### Author: ![AMJ](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amj/32/214096_2.png) [@AMJ](https://discourse.julialang.org/u/AMJ)
#### Post date: [July 3, 2021, 5:29am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/7 "2021-07-03T05:29:14Z")

</div>

[Here](https://www.youtube.com/watch?v=dmWQtI3DFFo) , It is an interesting talk, specially when he reasons why use Julia instead of C++.

Do you yourself have any plans on deploying Julia in production for high frequency-ish trading ?

---

<div class="post-metadata">

### Author: ![dm13450](https://avatars.discourse-cdn.com/v4/letter/d/eada6e/32.png) [@dm13450](https://discourse.julialang.org/u/dm13450)
#### Post date: [July 5, 2021, 10:47am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/8 "2021-07-05T10:47:23Z")

</div>

That’s a nice little package. I’ll have to download some of their data using it. Thanks!

---

<div class="post-metadata">

### Author: ![dm13450](https://avatars.discourse-cdn.com/v4/letter/d/eada6e/32.png) [@dm13450](https://discourse.julialang.org/u/dm13450)
#### Post date: [July 5, 2021, 10:49am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/9 "2021-07-05T10:49:26Z")

</div>

Thanks for that and no plans yet.

---

<div class="post-metadata">

### Author: ![p-casg](https://avatars.discourse-cdn.com/v4/letter/p/ed655f/32.png) [@p-casg](https://discourse.julialang.org/u/p-casg)
#### Post date: [July 29, 2021, 5:59pm UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/10 "2021-07-29T17:59:10Z")

</div>

Might be interesting to build an interface between CoinbasePro.jl data and my (WIP) LOB simulator [LimitOrderBook.jl](https://github.com/p-casgrain/LimitOrderBook.jl) for HFT strategy backtesting. I think these packages would complement each other nicely. I am looking for collaborators on LimitOrderBook.jl so DM me if there is interest.

I have also written some code for capturing message data from other exhanges (i.e. Binance, Bitfinex, …). It might also be interesting to build some sort of unified interface for all of these. I will take a look at the CoinbasePro.jl code to see what can be done on this front, the code I have is probably less organized and can probably use some inspiration.

---

<div class="post-metadata">

### Author: ![dm13450](https://avatars.discourse-cdn.com/v4/letter/d/eada6e/32.png) [@dm13450](https://discourse.julialang.org/u/dm13450)
#### Post date: [July 29, 2021, 8:22pm UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/11 "2021-07-29T20:22:19Z")

</div>

Nice looking package that, I’ll have a look and see if I can add anything. I’ve been parsing WebSocket feeds recently and have a blog post coming out soon around that.

---

<div class="post-metadata">

### Author: ![Conrad\_Steenberg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/conrad_steenberg/32/27109_2.png) [@Conrad\_Steenberg](https://discourse.julialang.org/u/Conrad_Steenberg)
#### Post date: [August 9, 2021, 12:03am UTC](https://discourse.julialang.org/t/getting-started-with-high-frequency-finance-using-crypto-data-and-julia/63730/12 "2021-08-09T00:03:08Z")

</div>

Does anyone on this thread plot live data using eg Makie? I have a Tradier datafeed (websocket as well as streaming http) and am looking at the best way to do live downsampling to eg 5 min bars and real-time updates of the current bar, as you would see in any trading software.
