Does anyone really like using Alpaca?

I share the frustration echoed here by many. Thank you for broaching these issues, Keith!

The percentage difference between my sell orders and their actual fills is ridiculous and renders my trade model (which cycles trades usually every ten minutes or so) practically unprofitable.

I am more and more convinced this is not because of ineptitude in the Alpaca platform, but a cynical revenue model that sucks dry most of the pennies we earn.

The question is: what is there to do? Please join and help thinking about better alternatives:

Are their platforms that charge a flat rate for transactions rather than a crazy and unpredictable percentage of the fulfillment? As far as I know, Binance charges about $20 per sale and that’s it. Their API is clunky but I think I will try it. Anything similar for stocks? If Ameritrade is both expensive and has a complicated (primitive?) API – than that is not a good solution…

Other ideas?

1 Like

Gil,
I’ve only put models into production that trade once per day to once per week and even that moderate frequency is ruined by Alpaca. I can say w/ confidence that my backtest is solid and would work if the damn trades would just execute when they should. For the record, this is a long-only model that focuses only on high volume stocks. Its about as vanilla as you can get, and the price drops through my stops all the time. Frankly, to reiterate my earlier point, for what I’m trying to do Alpaca is pretty much worthless.
So what to do…
I’m happy to share my next steps.

  1. move to etrade. I’m pretty sure they also offer commission free trades and have an easy to use API. Its not as easy to use as ALPACAs but I have been able to get it to work.
  2. etrade does offer bracket orders, but not through the API (seriously, WTF is up with this?). So I’m going to have to change my strategy a little bit to what I’d call a semi-automated approach. I may enter in some trades manually w/ a OCO bracket order, and then have the API monitor them and re-run my predictive portion to decide if I want to stay in the trade or get out. I can always cancel the bracket order and have the algorithm re-enter it as a simple stop loss order.
  3. generating market data. I don’t think that etrade offers that. So for now, I’ll try to stick w/ alpaca-polygon. I may need to leave some money in there so they’ll let me use whatever market data api they eventually release. I know we get to keep using polygon after that. I like polygon, so the final straw would be to try and use the $200/month polygon tier. Since my strategy is really swing trading, I may be able to get away w/ the $100/month as a 15 minute delay won’t be super problematic most of the time, although when it is problematic it will screw me, so I’m not too keen on that either.

For now I’m counting on two things, that etrade is as fast and reliable as I remember ally being, and that I can continue getting market data from alpaca. If etrade isn’t I’ll probably try interactive brokers, but my understanding is that their API requires a desktop app which isn’t feasible for me right now.

Thanks for the detailed answer Keith. We are not far from each other. I don’t use bracket orders and gave up on limit orders because of the ridiculous fulfillment time. Other than that pretty similar to what you’re doing. My cycles are shorter (one or two a day usually). It drive me nuts that I put in a sell order for about ten stocks at avg of 0.30% profit and it’s fulfilled at 0.05% sometimes even negative!! I only use open orders, which are usually fulfilled after 10 seconds but sometimes take more, and that is really bad.

I didn’t know eTrade has an API and will check on it. I like there interface in general so here’s hoping. For data, either Alpaca Pro for $50 or Polygon for $200/month, but actually this kind of bars data is available by many vendor, I reckon it would not be difficult to replace with other providers.

I am using Python 3.9 on Windows with REST APIs for Alpaca and Polygon, what platform are you using?

Gil

gilbenherut, you mentioned you gave up on Aplaca limit orders because of “ridiculous fulfillment time”. To Alpaca’s defense, I want to point out that i use to split my orders in half and route one part to Alpaca and another to Ameritarede. I did that for a week or so. Both brokers performed pretty much identical. They executed my limit orders at the same time and for the same price. We are talking hundreds of orders. I could not detect any significant difference. That’s why i switched to Alpaca and use Ameritrade only for options.

4 Likes

I’m done with Alpaca

  1. It’s March 15th and I have no tax return in my account docs

  2. When I went to move positions away from Alpaca I learned they are not a full fledged broker. They don’t transfer positions… So If you’re thinking you’re going to move to some other platform, you’re in for a surprise - you’re going to have to sell everything and realize your gains/losses instead of transferring your positions.

Thanks this is helpful.

Any one tried eTrade API and could comment on its performance?

Gil

Gil, I’m using eTrade API for some stuff, and at times it can be pretty slow. They require OAuth 1 authentication for all REST queries, and they don’t have a streaming API. Also, they don’t support basic stuff like bar sets and historic data. Also, they don’t have a proper sandbox, what they have appears to return “canned” data. All in all the API kind of clunky and feels dated. Their biggest advantage that I see is decent support for options trading.

Seems like a waste of time, except for options as you say…

Beyond slow, do you find a persistent gap between your sell price and actual fulfillment? Put differently, do you know how they cut their profit, and how much it is?

Gil, No, I have not seen a consistent pattern, but then again I don’t use it much for trading stocks and ETFs. In the wake of Alapca’s divorce from Polygon I’m looking for alternatives, and leaning heavily toward TD Ameritrade in spite of the shortcomings mentioned by others. Ruled out Ally, Robinhood etc. they’re just too flaky. I think my friends and I have tried all the APIs we know of, and nothing has been very satisfying. I had high hopes for Alpaca, but, alas, no longer teh case.

Arctodus,
I have just started an Ally account. What is flaky about it for me to watch out for?

l2t, Ally was one of the first APIs we tried so it’s been a while. But if I recall correctly, excessive slippage and missed trades due to delays. Also, I don’t think there was an “official” Python API at the time, which made it cumbersome to interface seamlessly to ML algorithms. I think we used something from github? They did support options trading, which was a plus.

have you used the API? I couldn’t get it to work. Also, their gui doesn’t allow for bracket orders. Maybe the api does?

Go to interactivebrokers.com and use it.

Stuart,
Does IB have a RESTful API? Or is it only the one that requires a desktop download?

also, I am confused about the market data (especially realtime options data) available by IBRK vs. Ally. I have an IBRK account, but my understanding is that I’m limited in the number of tickers I can query in IBRK, whereas I have no restrictions when using the Ally API. Any of you know about this?

@keithegiles
Wanted to chime in, I tried their brackets and didn’t find that they work all that great for intraday. I personally have a set of saved dataframes to keep track of the sell and buy conditions for each symbol. Their API works almost perfectly for me for individual buy and sell order executions. The issue is that bracket strats need to be coded on your side at faster time levels.

I am thinking to make a transition as well. I tried to support but it has many issues. Once the whole UI was gone. That was super sccary. It was around 3-4 months ago

Tradier has a MUCH better API and far better data. And a cheaper subscription plan for data ($35/month). I switched away from Alpaca last week after all the data issues. I easily ported my bots over to Tradier because their API is super straightforward, and their quote feed includes all the Level 1 data so you don’t have to calculate it yourself, which makes my executions much faster. And I like their GUI better. And you can trade options.

1 Like

Etrade has great API, but they ahve othter stupid fees it sucks. but Alpaca issues are a bigger problem now.

I already posted about this. The spread is huch higher than other platforms and when you use limit orders you have to cancel multiple times because it doesnt get filled.