if it was a regular occurrence, my money issues would be over...
Unfortunately, this happens only once in a while.
It is the second occurrence of such cool event in 2 years!
The first time it did happen, I did made $1000 in 20 seconds or so...
but $1400 in 2 years... this is not enough to quit my regular job yet...
Cycle 3, stage 2, day 13:
I have completed my new market making strategy yesterday. There are still bugs in it. I think that I may have done 3 attempts. At each iteration, I am getting closer to a working solution after fixing bugs that the attempt has highlighted. This should happen sometime this afternoon...
Cycle 3, stage 2, day 14:
The market making algo is not quite right but running it did make me find a bunch of shortcomings. Some are unique to MM but few of them were general and affecting any types of trades.
Those types of discovery make me happy!
Yesterday run was not conclusive but I think that once all problems will be addressed, I should have good results for my hard work!
Cycle 3, stage 2, day 16:
I have experienced another extreme luck situation. The probabilities of the right conditions happening to trigger the discovered bugs are similar to the odds of winning the biggest prize in a lottery...
I am usually grateful when this is happening... However, some part of me wish it was not happening now as I am in a hurry to have the system work...
That being said, I am very prudent for what I am wish for... Extreme luck must be seen as a blessing...
Cycle 3, stage 2, day 18:
The new market making feature is still a work in progress... It has started to work but I have kept finding glitches left and right keep happening.
The most satisfying glitches to catch are the ones impact every types of trading strategy but went unnoticed so far...
So far, the market making strategy is not as steady as my ARB strategy. it feels like the profit success rate is around 50%... I feel like working out the remaining bug and tweaking the parameters will improve that metric but the strategy is intrisically more vulnerable to random than what I had before...
Once my confidence into this strategy increase, I will be able to increase its budget and let it trade with bigger budget but despite... Again, this is not the game changer addition that I was hoping for...
idk how many time I will say that before succeeding to the level that I wish for but it seems like the grinding is far from being over... The new feature is a small evolution not a revolution...
but anyway, this accomplishment is still satisfying.... I love going from the vague idea to having a concrete implementation of my vision... I love doing that. Since I have started this project this has happened many times...
Cycle 3, stage 2, day 19:
I am not sure if it is luck again but this morning I just caught 2 very old lurking problems...
stage 2 is really moving a lot of stuff...
Update:
I have just discovered another 2 years old nasty bug. It did jump right into my face this morning...
Receiving all these revelations must be a sign of something good about happen...
Update 2:
Another good bug catch under the belt!
Cycle 3, stage 2, day 22:
This seems to be the theme of this stage 2 run. On day 21, a terrible run where a lot of things went wrong did occur.
Again, luck created a very improbable sequence of events that did trigger unsuspected bugs in the code.
Usually, even with bugs, the incurred loss is usually very small but this time. I felt the pain. Things went really bad... Not catastrophic but painful enough for me to take the decision to put my system offline until my investigation of what did happen is completed...
So far, the investigation made me discover 2 serious problems... So this turns out to be a very profitable investigation session...
but my take away from all this... Despite squashing bugs on a regular basis... there are still more lurking around... and also, I have been evoking luck helping me to find bugs very often this during the stage 2 run...
I would be curious to know if UMS stage 2 is putting a special emphasis on luck manifestation... I wouldn't be surprise to learn that it is indeed the case... Well, this is what I am experimenting... I feel that luck manifestation is stronger this time than what it used to be....
Really curious to know what that means...
Cycle 3, stage 2, day 26:
Stage 2 is close to end and I feel like it is going to coincide with a major milestone.
I made another Market Making trading test yesterday evening.
6 out of 6 MM trades succeeded. I have put the MM on hold as I wanted to analyze the logs to convince myself that everything was fine.
This analysis did allow me to find and fix a glitch. Beside that, everything looked perfect. There was minor improvement. This is an idea that kept coming for several purposes and it seems like I have been having a mental block and I simply did not know how to make the idea happen.
This afternoon, I have rolled up my sleeves and decided that I would find an elegant solution to this issue and I got my ahah moment. The design that did suddenly pop up in my mind is so nice that I am excited creating it.
If the excitement remains alive, it is not impossible that I will find the energy and motivation to make it happen tonight. Worse case scenario, it will be ready tomorrow morning.
The hardest part is to imagine a good design. Once, it is present in mind, writing it down is pretty much trivial...
Putting this in place is going to be an important evolution of my system. I feel like it is going to open the door to new opportunities that I even do not know that they exist yet...
I feel like the last few days of the stage 2 round 3 is going to be exciting and fun...
Cycle 3, stage 2, day 30:
Another kinda old small bug did appear on my radar by jumping in front of my eyes yesterday. I like to think that this is luck that made me find it.
Also the extra small feature that I wrote about in the last entry did contain a small oversight which made the feature misbehave. I did identify it and it took me few hours yesterday and this morning to correct the issue.
I have stopped very early yesterday market making trading run until I could fix all the identified glitches. I have added extra conditions to enter market making. I feel like this time there is too much conditions as the system is rarely triggered and the success rate has been not as good as I have seen with previous feature implementation iterations.
2 out of 3 trades were losses. The profitability of this strategy is more random and dependent on market conditions. This is in contrast to the more deterministic nature of arbitrage. Once all the small bugs will be eliminated, it will take few days of running the strategy before concluding anything about its profitability....
I am not sure when this did happen. Either yesterday or this morning but I got an extra idea on how improve my system. It took me the rest of the day to add it. I am currently building the server for a new deployment.
I'll turn off the MM trading as I leave the system unattended but it takes an hour for the system to be primed to start doing MM. By starting it while I leave for dinner will allow me to start testing MM immediately when I come back...
MM strategy implementation completion appears to coincides with end of stage 2... I'm not sure yet if this will generate a significant revenue yet... If it does not, this did allow me to stress test my framework to be more flexible by using it in a different way and this whole exercise did allow me to catch a lot bugs... If it does, it will bring some relief to my finance on top of all the other enumerated benefits in case the result is inconclusive...
Either way, with the start of stage 3, I will return to the previous effort which was to support a new exchange. This idea has been put on hold because I had this genius idea of doing market making and I thought that this could be done very quickly... one month ago... I have been wrong with that effort and time estimation it seems...
I had a good intention to not run MM unattended. So at late evening, I have turned on the feature and I wanted to make a small nap while the system is triggered and start trading. I end up falling asleep for good instead and the system did stumble on problems coming from the new code....
Fortunately, no losses has resulted from this. I have been lucky one more time.
I have corrected the new problems. I am currently rebuilding the server and I should relaunch it pretty soon.
I had a realization yesterday and I am not sure if this is related to the UMS programming. I seem to be ultra focused to the project to the point of neglecting other seemingly important tasks. So far, nothing bad had happened because of this but this is something that I have noticed to change in my behavior. Succeeding my goal is taking all my attention and all the rest becomes unimportant...
Cycle 3, stage 3, day 3:
I think that I have spotted a pattern in parameter values that generate profitable trades or losses.
I did tweek my settings accordingly and I did relaunch my system. So far so good. 100% success rate with the new setting.
Setting tweeking isn't over. I am sure that more frequent triggering is possible.
Cycle 3, stage 3, day 4:
activity is a bit sporadic with long dead periods.
This morning while I was reviewing the activity of yesterday session, I have spotted a big bug that appears to not have so much impact except nullifying one of the condition to launch into a MM trade. Fixing this bug did make my system to stop being trigger happy. I did polish few more spots of the feature.
It appears that the feature is finally stable. I just need to tweak some more various knobs to find the optimal settings but this is a very long iterative process. I can review the output once per day.
The odd thing is that now that I am focusing on this new strategy, the original arbitrage strategy almost don't generate almost trading anymore... This is not what was intended. I was hoping that the new trading strategy would add trades over the top of the ones from the original strategy. Not replace it.
that being said, I can start doing something else in between the occasional review. I have this new idea on how I could improve my execution engine but I am going to write down this idea to work on it later as if the system does not trade much, there is no much gain to get from improving its execution.
I'll return to migrating my system to a second exchange as I said I would do few days ago.
Cycle 3, stage 3, day 6:
The last 2 days have been tough. I am chasing an elusive bug that has just appeared (or that I have noticed for the first time). It is hiding in one of the most complex and most crucial component of the system. I have been searching very hard and except very minor almost only cosmetic improvments, I did not find it.
I hate doing that but because it appears to not happen very often and I need to move on, I decided to add protective code instead to let the code fallback on its feet if it happens. On first attempt, the bug did reappear very quickly despite the protection that I have added. So bottomline, I don't understand at all what is happening. I start to suspect maybe some memory corruption. I am about to bring out the big guns to nail this thing out.
To add insult to injury, one of the cosmetic change that I did also broke badly my system. My GUI client was now crashing. It must have taken an hour or 2 to figure out how and what I did broke in the latest round of change. I have found it and everything looks good now.
On top of that, while I did not changed anything in that area, my new market making strategy did suck big time in the last 2 days. It did only generate 3 trades and all those 3 trades were losses. I am not overly concerned. It is just an unlucky streak. I suppose this is expected once in a while. It must be the current market conditions but I am not able to provide an explanation by simply inspecting the markets visually...
I hope that the remaining bug is a memory corruption and catching it will make my system operate smoothly and profitably...
This should happen sometime tonight...
One last thing, yesterday morning, I started to look at open source projects providing frameworks to interface to crypto exchanges. During stage 1-2, when I decided to focus on migrating my system to other exchanges, I did the exact same exercise and I did find something really neat. There is a project supporting about a dozen exchanges. This knowledge did kinda felt into a floor crack.
Perhaps adapting my strategies to these out of the box turnkey solutions might not be as optimized than my in house framework but I could maybe have a working prototype much faster than if I write the exchange interface myself... On top of rediscovering this project, I did find another project that looks really really great too...
Cycle 3, stage 3, day 7:
I have finally found the bug. It was much simpler and stupid than everything that I did imagine.
I was investigating totally beside the track. This whole journey did give me the opportunity to clean up a little bit the code and add several very minor improvements.
I like to think that the sum of all these minor improvements will end up to contribute to success in the grand scheme of things.