This is the mockup of the interface that I'm developing against. I added the "trading panel" today and the purpose of this is to allow me to send orders to the broker (for now, simulated). Next step will be to reflect the buys, sells and stop losses on the chart.
Uh, no. Next step is to implement orders and fills. For now, I'll assume complete fills with no slippage, just like in real life. I'm almost done this, but keeping it simple is proving to be tricky. To avoid extra work is for now, the data will be stored in memory which allows me to quickly refactor without having to worry about the database. Once I have refactored a couple of times and I am comfortable, I will persist fills/orders/trades to the database. Once _this_ is done, then I can reflect them on the charts. I'm really enjoying this design work. One of the things that I try to stick to is do the bare minimum that will let me accomplish the next goal. Every time I catch myself trying to do something that "will help me in the future", I stop myself and focus on the now. It's pretty liberating. As an aside, I am not actively seeking any projects but... a certain Apple supplier with lots of suicidal employees wants me to put together and lead a team to build an OS for a new product. I like my life. Except I'm still too fat. So I'm just going to bill these guys 4x what I'd normally bill and wait for them to say no so I can keep doing this.
To quote: Most of you are software engineers here. Stop thinking like one. Writing a new shiny backtesting tool or trading framework is not going to do anything than waste your time. Stop talking about languages, it really doesn't matter. Work on your alpha. Yea, its the thing that you don't know how to build, work on that. Trading frameworks come after.
Do you have a list of all "next goals"? Such that you have visibility of your "ultimate goal"? If you don't know your ultimate goal, you might end up shifting the goal posts along the way, ending up at the wrong destination.
While I appreciate that your thoughts are in the right place, I've been working on a system for a while now. I finally found something that seems to work in Forex so I'm forward testing it in IB while I build this. I've said this. I've also found an options strategy that I like, that I'm live testing with real money. I intend to automate that as well and move it over to Spartan when I'm comfortable with the process. The purpose of building Spartan is to make it super efficient for me to test and implement new systems.
I like being held accountable by the peeps here, so I'll tell you this is what my day looks like right now between ~9-4 1. Learning more about options 2. Manually backtesting different option strategies visually through various googles 3. Managing current positions 4. Placing the options (live) and forex (paper) trades for the next day/week I actually am unable to focus on Spartan during the day, TBH, just because I'm distracted by the options strategy. The forex system just needs a few minutes a day. Now I know people will say "you can't be so arrogant to trade two asset classes". Yes I can, and yes I am.
Of course you can trade multiple asset classes. Especially if you make your own "helper tools" that are fully adapted to your way of trading and make you work more efficiently. For example in collecting all data that are necessary in your strategies and making the results visible in precisely the way you want them.
@HobbyTrading's comment on my post where he asked me if I may be shifting goalposts was a good one. I sat and thought about what is the absolute minimal thing I need to do to get the next goal and I realized that order fills have nothing to do with it, simply orders and position updates which is like 8 lines of code. I will be ripping out any order fill related stuff for now. Thanks bro.