- ago
I can't keep up. Every time I get things working, there's a new release with a breaking change. Wealth-Lab has averaged one build per week since the first release in March, 2021. I spend more time adapting to new releases and retesting than I do improving or writing new strategies. Each new release presents a risk.

The implementation team seems to be distracted by every "shiny object" Feature Request. Remember that every function point implemented adds to the maintenance load.

Wealth-Lab support staff can't get it working consistently on Windows - and you're going multi-platform???

I'm done chasing your dream.

0
1,069
Solved
9 Replies

Reply

Bookmark

Sort
- ago
#1
QUOTE:
on Windows - and you're going multi-platform?

I'm not sure it's worthwhile for WL to go multi-platform since nearly all investors use Windows.

But the intent of .NET 6.0 is to be more multi-platform, so it does make some sense to follow that design pattern even if multi-platform isn't the goal. It's politics. Placing .NET 6.0 on your resume suggests you can produce multi-platform code. And placing .NET 4.8 on your resume is worthless.

But moving to .NET 6.0 means rebuilding extensions since WPF and .NET 6 are two different birds. One is platform dependent and the other is not.

But I agree with you. My production code is still running on WL6 with little change. I decided some time ago not to switch to WL7/8 for production until I had modified strategies that took advantage of WL7/8 features. But there are so many features that I'm overwhelmed. Yes, both the .NET and WL frameworks do seem to be a moving target. But that's kind of true for all software development. If there were a WL8 Fidelity brokerage plug-in that worked with Active Trader Pro, that would get me to switch to WL8 for production since WL6 doesn't support that.

I only wish my strategies were getting better and making more money since WL6. I have yet to realize that.
0
- ago
#2
But you can use WL7's final build B53? It's stable and no upgrades are planned.
1
- ago
#3
I get the value of stability: right now, since the latest build, I cannot run backtests because of an issue with ASCII Datasets:
https://www.wealth-lab.com/Discussion/In-B5-some-ASCII-symbols-ignore-data-range-loading-all-data-7917

But, as far as I can tell, any reported bug gets sorted out immediately in the next release. Including the one I just mentioned above, which was apparently already fixed (within short hours after reporting) and the release containing the fix is eminent. That’s actually an advantage of short release cycles: we don’t need to wait too long for a bug to be squashed.

However, we have to understand that it’s incredibly difficult to make money selling backtesting software. A lot of good software came and went (RightEdge, Quantopian, and hundreds more). Adding some features that might not be interesting for us in particular, is also a way to grow organically the user base. And it is of everyone’s interest to have as much paid customers as possible, in order to guarantee that long-term we continue to have a dedicated and passionate development team to properly support the product. For example, I don’t care much about Criptocurrencies (I am of the same opinion as Buffet on this); however, if a certain crypto broker extension is going to attract a few paying customers, then great - the way I see it, better for all of us. I also don’t care much about real-time trading (I only do EOD); and yet, I cannot think of a backtesting software not offering the choice.

And then there are the updates that have less to do with features and more with keep up with the underlying technology: the update to WL8 mostly catches up with .NET 6.0; and this had to be done, eventually; and actually resulted in a lot of improvements in terms of performance. Plus, every time a big change like this is warranted, I believe it is also the chance to change some more fundamental aspects of the architecture, which I believed happened a bit from WL7 to WL8.


With each new release, we always have the option to simply ignore it, if there is nothing really interesting for us there. And the current licensing model allows for 2 installs: with it we could easily have a test instance to make sure everything is good, before updating the production one. With Windows Sandbox, this could even be done on the same machine (or with some virtual machines too).

Software like Wealth-Lab made available to retail investors features that before might only be available to funds with their own development teams. We have been living a few years of a very hot period in the trading markets; this usually attracts a new wave of investors and raises the interest in products like this. Still, this will always be a niche market and, like I already mentioned above, I don’t believe it is easy to make money out of it. Broadening the scope of the product (without deviating too much from the essence of it - which I believe is the case) is needed in order to serve other traders’ interests too. We are all different and the product is evolving trying to cater to all our different needs. But, the core of it - a backtesting platform - remains; and I believe it’s the best out there. Plus, I personally think the short release cycles are more of an advantage, if used properly (and the 2 licenses allows it); and I personally also like the Wishlist approach - sure, most of the implemented extra features are not for me, but some are and others were even proposed by me.
6
Best Answer
- ago
#4
QUOTE:
Each new release presents a risk.


True, but....

I am creating software since 40+ years, I've seen a lot.

I think WL has an excellent Feature-to-Bug ratio, i.e. there are a lot of Features, Changes and Improvements and the Bug-Rate is astonishingly low.
6
- ago
#5
All good comments - I am impressed how WL8 has raised from WL6 (MS123 with no source code available to the team) to an astonishing product with many features way above WL6. Kudos to the team.
I do admit it can be overwhelming keeping up with all the changes and new features but it is entirely discretional - and bugs are indeed fixed very quickly.

6
- ago
#6
I would never stop using any software because it is frequently maintained. Waiting months or years for an update is outdated and a pain in these days.
2
- ago
#7
QUOTE:
I would never stop using any software because it is frequently maintained.
Neither would I, if it weren't for the repeating pattern of a release followed by reports of this or that no longer working. The rapid releases do not seem to have sufficient testing. And that's related to the number of function points implemented. Testing everything may be prohibitive time-wise.

Having a wide breadth of functionality has a downside. Each function point is a constraint to be considered in future development. I would raise the bar for inclusion of requested features. Just my opinion.
0
- ago
#8
I completely agree! Perhaps, as Eugene comented, the releases shoul be marked as stable or not!? This is certainly difficult since we are paying for it. But we know what it's worth to backtest portfolios. This should stay the main feature of WL!
1
- ago
#9
When Fidelity abandoned this community, I decided to experiment with other platforms. None met my needs of a .Net based platform that I integrate with my own applications. I need the latest .Net based approach since it gives me access to integrate latest nuget packages, examples being ML.NET and congative services. The multi-platform support is immaterial to me. Access to the latest algorithms and 3rd party libraries is vital.

Even before Fidelity cancelled their involvement, there were years of heads up that they could stop support, and so I abstracted as much as possible to my own applications, which then interface to WealthLab. However I was still far from complete when Fidelity cut the cord.

Since WL7 I have completed abstractions to treat WealthLab as a front end. This way my WL8 strategies are like the view model portion of any modern software framework, where there is absolutely minimal code behind in the view front end, and almost all code is in libraries that are abstracted. I use MVP, but MVVM would probably be better. This minimal code behind means that all my strategies:
1) simply derived from an interface in addition to UserStrategyBase,
2) the parameters defined in the constructor,
3) the visual studio stuff, and nothing more.
My initialization and execution methods simply call my presentation layer code in an external library.

This allows me to therefore do full Test Driven Development. I load the bar history into my unit test, instantiate the strategy and run thousands of tests. Every WL7/WL8 release is easy and I have yet to find an issue from a WL7/WL8 change that has rippled through to my production setup.

I do development on a separate machine to my production, and my unit test allows continuous delivery of code if it passes the unit test because the strategies do not change, just my libraries change.

Therefore I am a huge fan of the WL7/WL8 release approach. The alternate Fidelity approach of waiting for years for problems like the stuck submitted bug to get resolved was catastrophic for me.

For me I hate AutoIt, because locations of buttons often move with WL7/WL8 releases, but this only really causes me problems with point and figure, so I made an app to help me adjust coordinates quickly.
1

Reply

Bookmark

Sort