To use chat, please login.
Back to contacts

Auto-trading with macOS (or linux?)

fxftw
Jan 26 2017 at 08:38
12 posts
I primary use macOS at home and linux for work. I was looking at playing with Oanda's API and getting to that with python or swift, but the more I look into it, the less ideal this seems.

Are there any decent software solutions for developing and backtesting autotrading strategies with these environments?

stian
Jan 26 2017 at 09:18
325 posts
There are mac versions of both cTrader and Metatrader. You can atleast run cTrader through WINE in Linux.

4xfred_2017
Jan 29 2017 at 08:10
7 posts
I run Ubuntu and use the fxtrade platform by using the oracle Java JRE , In my opinion i would try not to focus on 'auto-trading' and trade when you have the time. Develop a system that works for you and your personality in the time you have each day. I work 2nd shift so I typically trade in the morning at the coffee shop and then off to work , only about 3 or 4 hours.

Good Luck to everyone

fxftw
Jan 30 2017 at 08:06
12 posts
Got it -- I downloaded MT4 through my broker and got that to launch with PlayOnMac (similar to POL for linux) through Wine. I downloaded VirtualBox and installed Vista, then used Tickstory to generate a settings file for my broker and downloaded the historical data to my Shared Folder back on the Mac-side. For now, I'm just experimenting with M15, M30, H1, and H4 data across a few pairs. I installed Mono on Wine and was able to get Tickstory on the mac-side to Launch MT4 through with the historical data from tickstory. I ran a few tests and I'm getting 99.9% modeling quality. Kind of tricky.

I'd like to experiment with MotiveWave, but I'm turned off by the price. The Strategy Tester feels slow in MT4, but it'll do for now.

theHand
Jan 30 2017 at 10:07
365 posts
Oanda has several API's and at least some of them are system agnostic. Have you looked into the JAVA API ? It's the best developed one. O has the best trade sizes and it's the fastest.

All the other suggestions are a step or several backwards.

Why exactly isn't it working for you ?

4xfred_2017
Jan 30 2017 at 12:39
7 posts
fxftw posted:
 For now, I'm just experimenting with M15, M30, H1, and H4 data across a few pairs. I installed Mono on Wine and was able to get Tickstory on the mac-side to Launch MT4 through with the historical data from tickstory. I ran a few tests and I'm getting 99.9% modeling quality. Kind of tricky.

I'd like to experiment with MotiveWave, but I'm turned off by the price. The Strategy Tester feels slow in MT4, but it'll do for now.


Well I took a look at Oanda API again as it has been about 12 years since the last time I Looked and in their schedule A it looks that they have waived the Licensing fees... which is why I never tried because it cost money... for me MT4 was out because the unit size allowed did not allow small changes in my trade size, and with the FIFO and regulation changes and my small account balance I needed that perspective on the money management side.

Good luck with the 'autotrade route' if that's the direction you want to go... trading while I'm asleep scares the crap out of me , and I end up leaving the monitor on and not sleeping much if I see something that I want to trade but need to sleep before work...
but alas I do that often, greed, fear, or maybe its me just wanting more of the uncertainty and variety in my life

fxftw
Jan 31 2017 at 07:11
12 posts
I've experimented with the Oanda live streaming API with Node.js (maybe a year ago) and their v20 python setup just a few days ago. This was where I started out before going down the MT4 rabbit hole. In a lot of ways, it feels like I'm reinventing the wheel when working directly through the Oanda API rather than something a bit more extendable and easy to backtest / experiment with like MT4. Perhaps once I have a strategy running live that I like I can port it over.

MT5 looks like where I'd like to be, maybe further down the road.

theHand
Jan 31 2017 at 07:23
365 posts
You're missing two very large issues.

1. Speed. With O you simply send an apposing order to close positions. Most systems will generate multiple trades for positions. So if you need to get out in a hurry on O it is one order, with MT you have to close every trade and wait for a response. The speed difference is massive. And for me, easy 500 trades in a TP. Takes you between 250 to 500 seconds on MT. On O's API it could be as little as 100 ms.

In MT5 this is not an issue.

2. Trade sizes. On MT you can only come up in increments of 1000. With the API it's 1, iow's I'm compounding 1000 times quicker than you are. And that is critical. Extremely important in your overall performance.

Those two factors alone makes the O API the place to be. Other brokers aren't really options.

The speed issue I can let slide, you can always stagger an exit, but the compounding you can't let slide. Over 10 or 20 years the difference is a few billion.

And by the way I use Mac, Linux, Windows...Java helps.

stian
Jan 31 2017 at 10:55
325 posts
With FIX you can get execution below 10ms to platforms like LMAX (average is 3.29ms). Oandas spread is terrible compare to ECN brokers. Etc Pepperstone charge you 7.53$ a lot (and there are cheaper brokers too), EURUSD spread at 0 now. Meanwhile Oanda is at 1.5 pip. Way more costly.

fxftw
Jan 31 2017 at 13:22
12 posts
I suppose in the case of closing multiple orders, I could relay a message from MT4 with libcurl to hit the v20 server with a 'Close All' type message if i wanted to close a position, or hit it with the array to run through.

Right now, I rarely get more than 8 trades open at once across any given pair. *500?* This is a much different strategy than I've played with, and something I'll have to experiment with. Thanks for the tips!

Please login to comment .