QUANTMONITOR LIVE PORTFOLIO — Monthly Performance Update

Last Month of Live Trading: Contract Rolling and the CFD-to-Futures Copying Test via Darwinex Zero

Over time, I first unified my exposure across the portfolio. The next step was a stricter filter: instead of running several overlapping ideas, I reduced the portfolio to one strategy per sector. At the moment, my live portfolio is built around four core markets: XAUUSD, .US30Cash, BRENT, and EURJPY.
This matters because the portfolio is now cleaner, easier to monitor, and less dependent on one dominant market. The filtered snapshot currently shows total return +31.6%, monthly return +2.3%, weekly return +0.5%, peak drawdown -6.3%, win rate 48.6%, profit factor 1.61, 3,721 pips, and 0.4 trades per day over a 356-day history. In terms of trade distribution, XAUUSD accounts for 44.6% of trades, followed by EURJPY at 21.6%, .US30Cash at 18.2%, and BRENT at 15.5%.

At the same time, I have also been testing a technically more demanding layer of the project: copying trades from a CFD master account to futures on Darwinex Zero. This is where strategy quality is no longer the only variable. Once trades are copied into futures markets, execution quality, contract selection, symbol mapping, position sizing, and contract rolling all start to matter.

What contract rolling means

When trading futures, a contract does not exist forever. Each futures contract has its own expiration cycle, so before liquidity dries up and the contract reaches the end of its useful life, trading has to be moved to the next active contract month. This process is called contract rolling, or rollover.

In practice, this means that when trading markets such as oil, stock index futures, or gold, you cannot stay on the same contract indefinitely. The expiring contract must be replaced with a newer one. This is a necessary technical step, but it can also affect pricing, spreads, execution, and the precision of trade copying between accounts.

On Darwinex Zero, this is handled through the Assets page. That detail is important, because a strategy can work perfectly well on the source CFD account, yet differences can still appear if the futures side is not rolled correctly or in time.
How the copying test was evaluated

I compared the uploaded CFD history with the uploaded Darwinex futures history over the period where both accounts overlap. In the comparable window, there were 33 CFD trades on instruments that had a futures receiver mapping. On the Darwinex futures account, 32 corresponding futures trades were actually opened.
That gives a capture rate of about 97%, which is a very solid result overall.
However, the raw dollar profit on the futures side cannot be compared directly with the CFD account on a one-to-one basis, because the futures receiver was using fixed lot sizing. Based on the uploaded receiver files, the setup was:

.DE40Cash -> FDAX_H, fixed 1 lot
.US30Cash -> YM_H, fixed 5 lots
BRENT -> BZ_J / BZ_K, fixed 8 lots
XAUUSD -> GC_J, fixed 4 lots
USDJPY -> 6J_H, fixed 10 lots, with inverted trade direction in the receiver logic

That fixed sizing explains why a small result on the CFD account can correspond to a much larger dollar PnL on the futures side. This is not automatically a copying error. It is part of the chosen exposure conversion.

Execution timing
From a pure signal-transfer perspective, the copying worked well.
The average delay on entry was about 2.4 seconds, with a median of 2 seconds. The maximum entry delay in the matched sample was 6 seconds. On exits, the median delay was about 3 seconds, which is still very good. There was one clear outlier where the exit on the futures side occurred about 30 minutes later than on the CFD account.
This tells me that the copier was not generally “slow” or failing to keep up. In normal conditions, trades were copied quickly and consistently.

Brent rollover in practice
The futures history also shows the Brent rollover clearly. The first oil trade in the sample was copied into BZ_J, while the later ones were copied into BZ_K. In other words, the system did transition from one Brent contract month to the next.
Most importantly, this rollover did not show up as a visible breakdown in copying quality. All Brent trades in the analyzed sample were copied, and all of them kept the same overall profit/loss direction as the source CFD trades. That is a good sign, because Brent is exactly the kind of market where rollover handling can easily create trouble if it is not managed carefully.

Where the differences appeared
The comparison shows three main types of differences.
The first is one missing copied trade. A CFD USDJPY buy opened on 2026-02-16 12:43:40 did not become an open futures position on Darwinex. In the Darwinex order log, there is a related order reference for that source trade, but it ended in a canceled state rather than becoming a live position. So this is one clear instance where the copier did not fully complete the transfer.
The second is one obvious DAX anomaly at the beginning of the sample. A CFD .DE40Cash buy was matched by a futures FDAX_H sell, even though the uploaded DAX receiver file does not indicate that trades should be inverted. This is the strongest single interference in the entire comparison, because both the trade direction and the trade outcome diverged from the source trade.
The third type consists of small outcome differences in marginal trades. There was, for example, a DAX trade on 2026-03-06 where the CFD side finished with a tiny loss, while the futures side ended with a small gain. That kind of discrepancy is far less alarming. In a CFD-to-futures setup it can happen because of contract structure, bid/ask differences, commissions, and slightly different execution timing.

A note on USDJPY versus 6J
One important technical point is that USDJPY on the CFD side does not map to futures in a visually identical way. The receiver setup uses 6J_H and has InvertTrades=true, which means the futures trade direction is intentionally inverted relative to the CFD signal. So a CFD buy can correctly appear as a futures sell, while still representing the same economic exposure.
In the sample, USDJPY actually behaved well overall. Out of the mapped USDJPY trades, the issue was not random direction flipping. The main issue was simply that one trade was not opened at all.

What the numbers suggest overall
Across the 32 matched trades, 30 finished with the same profit/loss direction as the source CFD trades. That means the broad alignment was strong. By symbol, the picture is even clearer:
BRENT: full directional agreement in the matched sample
USDJPY / 6J: full directional agreement on the trades that were actually opened
XAUUSD / GC: full directional agreement
.US30Cash / YM: full directional agreement
.DE40Cash / FDAX: the weakest instrument in the sample, including the main anomaly

So the main conclusion is not that copying is broadly unstable. The main conclusion is that most of the system worked, but DAX was the weakest link in this specific test window.
Final conclusion: does CFD-to-futures copying work, and are there any major interferences?

My conclusion is fairly clear:
The CFD-to-futures copying model worked overall and worked well in most cases. The capture rate was high, entries were usually copied within a few seconds, and the large majority of copied trades preserved the same economic direction as the source account.
At the same time, there were a few real interferences, but they do not look like a system-wide collapse. The most important ones were:
one missed USDJPY trade
one clearly wrong DAX direction at the start of the sample
one unusually delayed exit
a few minor trade-by-trade differences caused by execution and instrument structure
So the answer is:
Yes, the copying from CFD to futures basically works. No, the data does not show severe broad-based interference across the whole setup. The bigger picture is positive. The remaining issues look more like specific technical edge cases than proof that the model itself is flawed.
That means the next step is not to abandon the copier. The next step is to tighten the few weak points:
re-check the DAX receiver logic
investigate why one USDJPY trade remained unfilled
keep monitoring Brent rollover through Darwinex Zero Assets
continue comparing live CFD and futures histories trade by trade
Overall, the test suggests that CFD master -> futures receiver is a viable structure. The core mechanism is working. What remains is the final technical polishing needed to reduce isolated anomalies and make the whole pipeline more robust.

Facebook
Twitter
Email
Print