MIH8
- ago
Hi.

I would like to report a problem I discovered earlier.







There are two variants that lead to this status. In the first example (NFLX), both strategies generate buy signals, 3 units and 4 units. Both strategies then generate exit signals of 7 units. In my opinion, this should be separated, especially because the exit prices mix.

In a second scenario (not shown) the buy signal is generated by one strategy. However, both strategies generate the exit signal, even the strategy that did not generate a buy signal.

Both strategies work with the same dataset.
0
531
Solved
16 Replies

Reply

Bookmark

Sort
Cone8
 ( 24.57% )
- ago
#1
QUOTE:
In my opinion, this should be separated, especially because the exit prices mix.
If you're using the same account to trade the same symbol, AND, you want to separate the signals, you need to turn OFF the Portfolio Sync preference to "Always set Exit Order Quantity to full Position Quantity". Then your strategy will exit the shares it entered with.

In this case, it's advisable to use Fixed Dollar sizing so that the sizes don't change due to changing start dates, equity values, etc. For example, if you're using 10% of Equity Sizing, just calculate what 10% is in dollars and use that for your sizing for the day (or week).
0
Best Answer
MIH8
- ago
#2
Thank you, I will apply it that way.
1
MIH8
- ago
#3
Hi.

I made the changes and it was an improvement, but still insufficient. As you can see in the following images, it worked fine for ABNB and ZS. But there is a difference for SIRI, unless I missed something. The SIRI buy signals were "all" generated by one strategy, but the sell signals were again triggered by both strategies.







QUOTE:
In this case, it's advisable to use Fixed Dollar sizing so that the sizes don't change due to changing start dates, equity values, etc. For example, if you're using 10% of Equity Sizing, just calculate what 10% is in dollars and use that for your sizing for the day (or week).


Does this mean that the selection of the position sizing method is not possible? Can you explain this section in more detail?
0
MIH8
- ago
#4
While I was writing the last post, the next cycle ended and showed the next inconsistency. What was right during the last run was now wrong for ABNB. One thing is that the "9" sells are replaced with "8" sells in THREE_EMA. The next point is that in total there are only 8 of 17 left in the portfolio.











0
MIH8
- ago
#5
0
MIH8
- ago
#6
Next Run: Currently no more sells are attached to the portfolio for ABNB. I am not able to follow what is happening here. ZS is going wrong now too.



And to be clear about the exit strategy.

CODE:
Position p = LastPosition; double tp = p.EntryPrice * (100 + p_tp.AsDouble) / 100; double sl = p.EntryPrice * (100 - p_sl.AsDouble) / 100; PlaceTrade(bars, TransactionType.Sell, OrderType.Stop, sl, "StopLoss"); PlaceTrade(bars, TransactionType.Sell, OrderType.Limit, tp, "TakeProfit");
0
Cone8
 ( 24.57% )
- ago
#7
In Post #3, BBCross created a 149 share buy order for SIRI (although its status was CancelPending, presumably it was filled?) Consequently, I'd expect the strategy to sell 149 as it appeared to do.

QUOTE:
Does this mean that the selection of the position sizing method is not possible? Can you explain this section in more detail?
Anything is possible.
I'm only suggesting that you FIX your strategy's position size to a FIXED Dollar amount for consistency.

QUOTE:
One thing is that the "9" sells are replaced with "8" sells in THREE_EMA. The next point is that in total there are only 8 of 17 left in the portfolio.
In the first picture in post 4, you're showing both 8 and 9 shares for selling ABNB. This must be because BOTH strategy order blocks are selected. Consequently, it's clear to me that BBCross is the one selling 8, as shown in the second image.

QUOTE:
Next Run: Currently no more sells are attached to the portfolio for ABNB.
It's a stop/limit strategy. Presumably the exit price was hit, it was reflected in the data, so the hypothetical strategy finished selling. There is no guarantee that you will be filled in real life with stop/limit orders - but usually you'd be filled for stops depending on the how a broker triggers the order.

To keep a limit strategy in synch with the live account, use the "Exit Orphans" Trading Preference. This is the whole reason that option was created. See the User Guide for multiple scenarios surrounding the use of that option.
0
MIH8
- ago
#8
Hi Cone.

1. SIRI

Yes, SIRI was filled as expected with a share of 149. What is not expected/desired is that both strategies generated exit signals. The exit signals for SIRI from "THREE_EMA" came out of nowhere, so to speak.

I realize that generally sell signals can be generated without entry signals. The problem in such a case is that in the portfolio different Exits with different prices arise. In this example, the exits from "BBCross" are correct and the exits from "THREE_EMA" are wrong.

Imho this should not mix. There should be a clear association of buy signals generated and sell signals.

2. ABNB

I can't say 100%. My intention was in any case, as with the other snapshots, to show the separate entries of the Order Manager.

Either way, it doesn't fit anymore. In Post #3 (30 minutes before) you can still clearly see the separation of 8 shares / 9 shares. Post #4 and #5 belong together. As you can see in the portfolio, the total number is still 17, as originally. But the exit entries have been reduced from 8+9 to only 8.

I don't see any logical reason for this.

3. stop/limit strategy

Definitely no. In the portfolio #5 are the exit prices to see and the live price, which already shows relatively clearly that the prices were not reached (if no gap was there). Nevertheless, I just checked again if at any time today, the price was at the stop or limit. There was no trigger.

Moreover, the position still exists. And the strategy should continue to generate exit signals.

4. Exit Orphans

Yes, I can or should activate that again.

In this case, treating ABNB as an orphan would just not be right. The trade should still run and get regular signals. There was neither a sell, a manual intervention, nor any other change for the position. The stop/limit was not reached either, so the sells could be open.

In summary, this is an open position for which signals need to be generated and sent. In the following pictures you can see which signals were generated and canceled (for unknown reasons).

What also surprises me is that these time gaps are present in the Order Manager for the signals, regardless of whether they are canceled or not. The strategy runs every 30 minutes.

The placed signals are not "attached" to the open position and the quantities are 8+7 (formerly 8+9). Imho this all looks very suspicious.





0
Cone8
 ( 24.57% )
- ago
#9
QUOTE:
In this example, the exits from "BBCross" are correct and the exits from "THREE_EMA" are wrong.
I'm throwing in the towell here! Wealth-Lab isn't ready for you to trade the same symbols in the same account on the same computer without the ability to fully synchronize the strategy with the shares in the account and the actual fills that took place. (Different computers for different strategies probably wouldn't even help if the account destination is the same.)

Strategies trade hypothetical positions, not real ones. Strategy1 could be trading "Positions" that you don't own due to Strategy1, but that do own in your live account as a result of Strategy2. There's currently no way for Wealth-Lab to know which strategy CREATED a live position.

I really don't know anything about your strategy, but don't you see the problem here? This "same-same-same" scenario is not going to work at all times without some mechanism to know which account shares belong to a strategy.

I can't follow the snapshots. You're using Auto-remove, and the orders shown aren't even listed chronologically. If you want to get to the bottom of this, I want to see all the orders. Don't remove any. You can do multiple sorts on the columns by clicking the timestamp column first, and then the Symbol column. Copy it to a file and send it to support.

p.s. There's also more real-time information about Positions in the Order Blocks on the left, but these are "closed" so it's another piece of hidden information.
0
MIH8
- ago
#10
Sorry, Cone, no rhetoric this time. (As a non-native speaker, your post sounds a bit provocative. I wish that this was not the case.)

1. Having two different and simple strategies that both work on the Nasdaq 100 really shouldn't be put down as "extraordinary" ("same same same"). It should also not be presented as if the user is the problem.

2. The exit logic is trivial (shown above)

3. Using the symbol filter in Order Manager is also not very uncommon. These are "all" signals from today for this symbol from both strategies at this time. I think you are very capable of interpreting this. Imo there is no need to sort 5 entries by timestemp.

4. If you need more information you can simply ask for it. I don't hide information nor am I a crazy user who does crazy things. It's not like I haven't already provided some information that at least shows I'm making stuff up. The software simply has shortcomings.

In fact, it looks like WL (currently) is not able to cleanly separate two strategies with the same portfolio.

Now, the "Auto-Remove" is enabled. Of course i can disable it the next session i look at it. Currently i am still working with the Paper-Trading Account. (For good reasons). I guess you miss some "error" entries which might be the reason for the time gaps.

0
MIH8
- ago
#11
Any idea how this will be realized in the future?

In the auto-trading context, I see this as a basic functionality of the software, that two (more) strategies can be applied to one symbol/data set at the same time.
0
Cone8
 ( 24.57% )
- ago
#12
QUOTE:
In fact, it looks like WL (currently) is not able to cleanly separate two strategies with the same portfolio.
Let's make it clear:
1. There is one account
2. A symbol in one account is one position, no matter how the shares got there.
3. Wealth-Lab cannot synchronize with the shares from multiple strategies trading the same symbol position.

If this is your basic requirement, then just stop.

Nonetheless, I'm looking into it to make sure it is working as expected, and during some premarket testing I've already noticed that the IB Account Position list isn't accurate - positions are being duplicated. Something changed.

The Account list is another piece of the puzzle. If you post more screenshots, make it a large one that shows the entire Wealth-Lab environment that includes the trading tools, Accounts, and Order Mgr. (But you can hold off on that as I do my own testing.)
0
Cone8
 ( 24.57% )
- ago
#13
QUOTE:
positions are being duplicated. Something changed.
Fortunately, what I'm seeing was due to a current debugging session and is not in production.
0
MIH8
- ago
#14
Thanks Cone for looking into it.

QUOTE:
If this is your basic requirement, then just stop.


Maybe i need to reformulate my intention. I understand that in one account the signals will result in one position from two different strategies. As soon this happens, things are mixed up.

So, the idea could be to avoid that signals "are sent" for one symbol if a previous strategy already sent signals for the symbol. This idea might be managed by the order manager. So, the status in the account keeps clean. This is the important point.

So, the problem only occurs if singals are triggered at the same time for the same symbol. However, this should not preclude searching the same data set for opportunities based on different strategies. So, whatever strategy kicks in first owns the right to make the trade and send signals.

(EDIT)
So we're talking about different points here. First it is about scanning the dataset with different strategies and looking for opportunities. Second point is to keep the account clean.

This logic would be under full control of WL. This time i don't say it is an easy task to implement. But it is possible and of course trading two strategies on the same dataset is normal if you do it in a semi-automated way. You take signals from one strategy and you ignore signals for one account that already has a filled position from a different strategy.
1
MIH8
- ago
#15
Do you think you can handle two strategies intended to work with the same data set, while keeping control over which signals are routed to the account? The question, of course, refers to the special case when both strategies generate signals for one symbol.

What else would a potential solution look like if you want to use multiple strategies for one data set? Currently, a problem only arises when the signals are transmitted by several strategies, not by the generation itself.

The order manager knows which signals belong to which strategy. Is there the potential to control this scenario? (i.e. before several strategies place an order in the account).
0
Cone8
 ( 24.57% )
- ago
#16
QUOTE:
Do you think you can handle two strategies intended to work with the same data set, while keeping control over which signals are routed to the account

If the account is flat to start the day (or you're sure the account positions are synchronized with the hypothetical strategy positions)..
.. AND it's a market order system (no stop/limit)
.. AND you use Fixed Sizing
then it should work fine.

Remove any of those elements, there's no way (currently, out-of-the-box) to keep multiple strategies, which are trading the same instruments in the same account, synchronized.
1

Reply

Bookmark

Sort