18

Any developers here working on automated trading systems?

Picture below shows my personal Forex box that I've been working on for over a year. Still in progress.

Im based in Brooklyn, New York

Comments
  • 0
    In the time before time , yes 😊
  • 0
    Yes
  • 2
    Cool and welcome to dr! I was playing around with automated trading a while back but I never got very far with it
  • 3
    isnt forex just a money sink for major players to harvest small time investors though?
  • 0
    I'm playing around with some algos for crypto auto trading. Based on the chart data I fetched since june, it should work. Thus I've to wait until I'm fully verified at coinbase to start with real money.

    I must say that your interface looks much nicer than mine because I've just a huge table at the moment with many calculations for dirrerent params to check which combination is the best.
  • 0
    @Wisecrack when you algorithm is good enough time is not the problem ;)
  • 5
    It's funny how automated trading is a legal thing. I mean doesn't this make trading redundant?
  • 4
    @FelisPhasma

    I attempted to build a bot like this early in my career about a decade ago; that’s actually how I got into programming in the first place. However, I didnt know enough at the time so I failed to finish the system or make it profitable. Now a decade later, and with that much more development experience, I decided to give it another shot. It's never too late!
  • 2
    @bosi

    Ah yes, I’m a UI and data viz developer by day, so I might have a bit of an edge there. We should talk more about your needs for the algo and whether my platform can help if I let you into a closed beta.

    It has a built-in simulator to run backtests but only supports my broker Oanda for live or practice trading.

    The platform is built around a plug-in system for algos and indicators, so you can plug-in your own Typescript/Javascript modules that can access trading and charting APIs and more.

    If you're able to build your own components, and hopefully contribute some back to the platform I'd be happy to consider giving you access.
  • 0
    @nitwhiz I guess it's not illegal because the necessary knowledge for building a good bot is not wide spreaded so just a few can take profit of automated trading bots.
  • 0
    @nitwhiz

    Manual trading can still be immensly profitable at the individual level, despite the proliferation of algorithms.
  • 0
    @parliament718 my prototype is build with golang but theoretically the algo (if working proper) can be portent to any other language.

    Im thinking if a fancy ui is really necessary for my purposes because since my bot should trade alone without any task for me to do.

    Basically I'm fetching the current course data for btc, eth , ltc and bch each minute via the coinbase pro api. My currently best algo aggregates them up to 1h and take usage of some moving averages to decide if it's a good moment to buy/sell. There are also some thresholds to prevent rapid-fire actions. With the local historic and detailed data in place I can run simulations much faster.
  • 0
    @bosi

    I see. So your algo doesn't require any visual component as it's just based on the output numbers of various calculation.

    My algo is based on visual price action analysis. It trades like a manual trader would.
  • 3
    my algols is based on sentiment analysis from scraping news sources.

    i dont have an algol. I just didnt want to be left out.
  • 0
    @Root

    Tell me more : )
  • 2
    @bosi @parliament718 Might I recommend tradingview? It’s an awesome charting site.

    Also, be aware that most “official” advice, especially in the stock market, is designed to make. you. lose. money. Why? It’s published and maintained by the very people who liquidate those who follow it. Crypto exchanges also do this, and be very very very wary of margin trading (betting with the exchange’s money). It rarely goes in your favor because they can — and regularly do — manipulate the market to liquidate whichever side (longs/shorts) are higher. So even if your predictions would have been correct, you can still lose the bet. If you’re on the less popular side (and therefore less profitable for the exchange to liquidate), this is much less likely to get liquidated, which is good! Why is this? Because most traders are absolutely terrible at trading and often make exactly the wrong call. Why? Because they’re listening to advice given by those who have a vested interest in making them lose money. And because people in general are just idiots. 🤷🏻‍♀️

    My best advice is to just read charts. Read charts read charts read charts read charts. Don’t math it; just read charts for a year or two and you’ll get a good feel for it. Only after you are comfortable with charts and are able to predict what a coin pair is going to do should you start writing your own prediction algorithms.
  • 2
    @Root
    What's that? Kramer is shipping you old informatjon based on moves that he already made? Poppycock I say 😋
  • 1
    @Root I'll definitely have a look at it.

    About your point that most people outside there only win because they make others to loose: I'm with you. For me building an automated trading algo is more about there was and is corona and I need something to play around with and maybe just maybe it really works but even if I fail I'll have learned a lot about data processing, technical chart analyses etc.

    So for me it's worth in any case and I've wasted much more money in many other "projects" so the little amount I've spend to check if my software works is not that much.
  • 0
    @bosi 👍🏻
  • 0
    @Root

    Fortunately, I only trade with brokers in regulated territories. “Stop hunting” is generally a myth created by traders who consistently lose money and look for an excuse. Due to fierce competition in the broker space, smart brokers know not to do this because customers can and do catch on pretty quickly and they’ll start losing customers and/or lose their license once it's reported to regulators. It’s not hard for customers to catch on to artificial pricing pushed to specific clients, all you have to do is open multiple accounts and find evidence of such price discrepancies to land your broker in hot water (if they're regulated).

    In any case, an automated bot technically does not need to use stop loss orders at all, since it can always react with a market order in milliseconds.
  • 1
    @bosi

    I did get the feeling that your bot is not very complex. This is why you're able to get by with minimal user interface. As complexity increases, it becomes harder and harder to ascertain whether or not your bot is doing what you think it is doing in its little blackbox without being able to see it visually.
  • 0
    @parliament718 your right. There are just 2000 loc so not that much.

    I believe that the algorithm must not be perfect or complex but just win more than it looses. I've run 1000s of simulations on historic chart data to find out good values for the params needed. Right at the moment I want to know how far away are simulation and reality from each other and therefore I'll give the bot a few weeks with real money to trade with.

    Oh and about the frontend: since I'm a backend dev a text log is absolutely fine for me ;)
  • 1
    @bosi no free lunch theorem and all that. any model that works will eventually be taken advantage of and stop working.
    the key appears not to make a model that works, but a model of models: something that maps failing algols to circumstances and then learns to recognize when to apply *which* algorithms.

    If I wasnt learning web dev because I need the money, Id take what I know theoretically and go work for someone while learning to apply it practically.

    no one wants to hire a high school graduate for anything though, so getting into the bottom of the rung codegrunt jobs like front end is the best I can hope for.
  • 1
    @Wisecrack thanks for you input.

    It's an interesting idea to implement multiple algos/models and "just" decide when to use which. My problem is that since I'm employed full time my time for implementing such a complete bot is limited. Therefore I go by step. Again, for me this project is more about learning than earning money. Even if I loose 100% it's fine for me because the knowledge I get (and it seems you already have that) is worth more than that.
  • 0
    @bosi

    Watch out for curve fitting. If you’ve run 1000s of simulations to find good values for your algo inputs, then you may be curve fitting.
    To avoid this you’ll want to make sure you’re doing “walk-forward simulations” instead, using in-sample data to train your models, and new, out of sample data to verify them.
    You probably already knew this :)

    However, despite all your efforts to optimize parameters, and even if you get your model profitable, I agree that it may eventually simply stop working.
    That alone wouldn’t be your main problem; the main problem would be that you won’t know WHY it stopped working. Would you just re-optimize parameters?

    It’s my personal belief that there is no “edge” to be gained from ANY price-derived indicator.
    That includes MA, stochastics, RSI, bollingers, etc, just about any indicator that’s derived from the price is not giving any new information that is not already reflected in the price alone.
  • 0
    @bosi

    They also tell nothing about the market structure, current dynamic, or market participant psychology.

    If your assumptions about moving average crosses stopped playing out for your next 30 trades, could you say why?
    Maybe you could point to a ranging market as the culprit (and you would probably be correct), but then you’d be using information you received via your eyes by looking at the chart. But how can your algo tell if it's ranging?

    No price-derived calculation could tell you that the market is ranging without a delay (the “lookback period”).
    And that same delay would have you miss the moment it breaks out. However, it’s easy to spot a ranging market with our eyes and to pinpoint the price levels at which we could consider the market “breaking out” of the range. All you have to do is look at the price action and draw a box containing the range.
  • 0
    @bosi

    That breakout moment can happen and be over with in just 15 minutes, which is why ANY delay in information is unacceptable to me.

    My strategy uses zero indicators, just naked candlestick charts.

    Btw sorry if this sounded like an attack on your model, not my intent.
    I just want you to be aware of this, as I consider it a mistake I made a long time ago (relying on any indicators and their potential inputs as having some kind of secret sauce combination that is profitable)

    I may be wrong : )

    All the best
  • 0
    @parliament718 wow that's a lot to read :D.

    Let me just say a few things about your points.

    First if all, yes my simulations "walk" through a period of time, e.g. a month or a year, and only have information that are available back there so it's pretty similar to the normal mode (when the bot is working with real money). I had run some tests which can confirm this.

    I agree with you that it's kinda unbelievable that any magic algorithm exists which is both not already used and makes a lot of money.

    The key question for me is if I'm able to build a program which fetches and processes enough information to make a relatively good guess on what will happen the next hours/days. Maybe this prediction is good enough to make money but this is not the mail goal. As I said I want to learn something so I'm happy with any input and your explanations on what basic strategies might or might not work.

    I'll become rich... either in my bank account or in my mind ;)
  • 0
    @parliament718 I think that method confuses cause for effect.

    the market charts are indicators of *marker sentiment* not the otherway around.

    So if you want to know what the charts will look like, you have to look at what is driving them.
  • 1
    @bosi

    For "walk-forward optimization" I was referring to this https://en.wikipedia.org/wiki/...

    It's an optimization strategy, which breaks up your test data into segments to avoid curve fitting. So if you train your model on a specific period of time, and determine some optimal inputs, you cannot just go back and trade/backtest on that same segment of data using those inputs (that's curve fitting). So if you have 1 year of data, you cannot train and trade your model on that whole year. You can train-only in the first 6 months and then trade for the next 6 months (with more data it becomes a rolling window of re-training the model every X months, but not using that information to trade until the next period).

    I do hope you get rich, both in your bank and in your mind! : )
Add Comment