HFT strategies for FX - anyone ?

Is there a way to make the patterns more generic? How about clustering them based on some similarity measure?
Yup. We can represent any price pattern as an ASCII string, and execute regular expression pattern matching algos. Its reasonably straight-forward, and C++ provides a rich pattern-matching library in the form of the <regex> library.

This is pretty much what Citadel et al. are doing behind tightly locked doors, and is why they tend to snap up voice recognition people. The technology is remarkably similar: detecting patterns in human voices and patterns in stock price signatures.

From "The C++ Standard Library: A Tutorial and Reference (2nd Edition)" by Nocolai M. Josuttis:

regex.png
 
Yup. We can represent any price pattern as an ASCII string, and execute regular expression pattern matching algos. Its reasonably straight-forward, and C++ provides a rich pattern-matching library in the form of the <regex> library.

This is pretty much what Citadel et al. are doing behind tightly locked doors, and is why they tend to snap up voice recognition people. The technology is remarkably similar: detecting patterns in human voices and patterns in stock price signatures.

From "The C++ Standard Library: A Tutorial and Reference (2nd Edition)" by Nocolai M. Josuttis:

regex.png
Can similar be done in Python?
 
Can similar be done in Python?
Yes, Python has a regular expression library, but speed is usually the issue. Generally speaking, Python is slower than C++. When an arbitrage opportunity arises, the C++ algos eat through the order book, claim their profit, and slower users get stuck with the leftovers. It's annoying; you place a market order, but don't get matched until the price has dropped a nickel, and you lose your profit. Sorta like racing a Corvette against a Camry.

However, it's not so clear-cut; network speeds and queue prioritization come into play, so Python might be viable, but unless it could be proven with robust case-studies that Python is faster than C++, I would be hesitant to use it. Python is generally used where speed is not an issue; like running after-hours reports, or for test batteries.

Interestingly, in the perf test below, Python 3 beats C++ in the regex-redux test. I'll have to run some local perf tests to check this out myself. The other tests show just how painfully slow Python is against C++.

Python regex docs
https://docs.python.org/2/library/re.html

Perf test:
https://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=python3&lang2=gpp
 
Last edited:
in my opinion,

Citadel isn't using text expressions. They either examine the state of the logical conditions, directly. Or they use binary numbers (not binary text).



Yup. We can represent any price pattern as an ASCII string, and execute regular expression pattern matching algos. Its reasonably straight-forward, and C++ provides a rich pattern-matching library in the form of the <regex> library.

This is pretty much what Citadel et al. are doing behind tightly locked doors, and is why they tend to snap up voice recognition people. The technology is remarkably similar: detecting patterns in human voices and patterns in stock price signatures.

From "The C++ Standard Library: A Tutorial and Reference (2nd Edition)" by Nocolai M. Josuttis:

regex.png
 
Take a step back and see how this looks,your initial post and compare that to for example another member K.Miklas whom is asking for serious collaboration.There is his real name,institution he represents in this case himself-his is acting like a professional.

On other hand you guys are either hit with outlier loss,because this is when people act irrational or spending too much time in Leadenhall Market ( for those from abroad this is a place in London where traders go to have a beer and chat-there is many trading firms in a vicinity)

What you put in is what you get.
 
Last edited:
Hi folks,

I am running an HFT strategy in FX and have an infrastructure that costed me quite a lot of money (and still costs a lot monthly). I'm making money net of all these expenses but am looking to potentially provide the structure and capital to other traders who need high-frequency (but not quite ultra-high-frequency, so anywhere between HFT and UHFT).

If you have a strategy that looks good but can't sustain the high execution cost that you get through a broker (IB, Saxo, whatever), maybe we can work together and split the profit...

Currently doing 95k$ a month in profit, potentially willing to take the same amount of risk on someone else's strategy and share 10%-15% of the performance (or 10-15k$ a month).

What I have:
  • I have a very good setup to trade FX, I clear with both NewEdge/SocGen and JP Morgan and have direct connection to most venues in FIX 4.4. or 4.2 (EBS, Reuters, Currenex, HotSpot, FXAll, FastMatch, Integral, ParFX, LMAX and CME).
  • I have servers in London and New York and am planing to add one in Tokyo, they are cross-connected to the venues directly.
  • This is a setup for high frequency trading, I am currently doing 3 billion USD a month in transaction across these venues.
  • I pay 5$ per million for clearing and have soft flow only with access to non-last-look order books.
What I'm looking for:
  • Someone with an HFT or HFT-ish strategy on FX.
  • Soft flow only, NO arbitrage strategies.
  • I'm looking for someone with a good strategy but not the ability to trade it directly because of a low average trade profit (e.g. "We're making billions in theory but 0.2 pip of transaction cost kills the performance so we're not trading it.")
  • Typically, whether you're executed now or in 150ms doesn't matter much... but whether you're executed market or limit and what slippage you have on market orders. If 100-150ms latency kills your strategy then you're probably doing toxic flow and we'd rather not get involved.
  • We have the infrastructure, capital and execution logic (processing low latency limit order scenarios instead of dumb market orders) to make such strategy work.
  • Typically 100 to 1000 trades a day.

If any of you have something like this, could you please PM me a short presentation of your strategy and pedigree, I'd be interested to know roughly what machine learning process you're using, how do you aggregate market data, what's your dependency to in-sample data, and whether the process is cross-validated and market dependent (if we send you proprietary in-sample data and then ask for fast responses of simulated trades on out-of-sample data, what tracking error do you expect?)

If you have any questions, shoot.

Hey.
I am new here. This is my first post. :)

Your technology cost just about right, specially considering the cross connect fees to the venues. We do have similar setup with taking and making capabilities, PBs, Venues and paying similar fees also.

couple of questions:
1- are you regulated?
2- If you are not much latency sensitive, why did you bother setting up all these!
3- RabbitMQ is not really a good option. Maybe that is why you are not seeking low latency strategies!

Sam
 
Hey.
I am new here. This is my first post. :)

Your technology cost just about right, specially considering the cross connect fees to the venues. We do have similar setup with taking and making capabilities, PBs, Venues and paying similar fees also.

couple of questions:
1- are you regulated?
2- If you are not much latency sensitive, why did you bother setting up all these!
3- RabbitMQ is not really a good option. Maybe that is why you are not seeking low latency strategies!

Sam
Hello Sam

About point 3 what is the best solution for you ?

Thx
Regard
 
Best solution would be a custom made.
As an example without going much into the detail. We created something for a similar technique a C++/FIX pass through solution. we have no latency in this cross connect model. As if we are placing the trades from our own algo.
Sam
 
Back
Top