Skip to content
Divergent Solutions

Approach

Three layers that each do one thing

Measuring, recognising and interpreting are different tasks. Cramming them into one step produces a system that sounds convincing and cannot be checked. So they are separated, each with its own source and its own boundary.


01

Measure

Deterministic compute core

Prices, volumes, ratios and technical indicators, pulled from market data sources and computed with fixed formulas. The same input gives the same output: today, tomorrow and in six months. Without that property a system cannot be tested, because you never know whether a deviating outcome came from the market or from the system. Testable is not the same as tested: the method has not yet been tested against what the market did afterwards. That test runs forward from now.

Source: market data and price history.

02

Recognise

Conviction layer

This is where the actual method sits: which patterns count, which sector characteristics weigh more heavily, when a setup is convincing and when it is precisely not. That is the knowledge which otherwise exists only in the trader’s head. Written into scripts and instructions it becomes repeatable, and therefore correctable when it turns out to be wrong somewhere.

Source: chart scripts and systematised decision rules.

03

Interpret

AI commentary layer

Language models explain what the first two layers show: fundamental context for a sector or company, and the current sentiment around it. They summarise and put things in relation. They do not calculate, they do not measure and they take no position.

Source: fundamental documents and public sentiment.

The hard rule between layer 1 and layer 3: numbers never come from a language model. A model that produces a number it did not calculate produces a number that merely looks like a measurement.


What runs

The dividing line sits in code, not in an instruction

The three layers above are the design. This is what actually runs: two runtimes, with the boundary between them at the place where numbers come into existence. The left side calculates, the right side interprets. Not “we use AI”, but: AI is here, and precisely not here.

Deterministic

Calculates. Fixed formulas, the same output for the same input.

Orchestration layer (n8n) + scheduled tasks on a machine of its own

Regime per sector weekly
Gives every sector a regime (stable, mixed or deteriorated) from macro figures, prices and the long-term view
Portfolio assistant continuous
Raises an alert when two or more independent signals coincide on the same position
Position synchronisation every working day
Fetches the open positions from the broker and prepares them for the rest of the chain
Technical analysis daily
Indicators, volatility estimation and correlations across the whole portfolio, computed locally, not in the cloud
Alarm layer with dead man’s switch daily
Watches the thresholds and its own heartbeat: if the daily calculation fails to arrive, an alarm goes off
Morning briefing daily
Bundles regime, technical state, macro and portfolio into a single message
Journal entry on message
Turns a free-text message into a journal line, with confirmation before saving
Chart signals on signal
Catches signals from the charting environment, stores them and reports the outliers
Booking calendar on request
The diary behind the contact page: free slots, confirmation, email

Everything here carries its function name. The internal codes are not shown, because they say nothing to a reader and change more often than the things they name.

Interpreting

Interprets. Reads the numbers from the left, writes none of its own.

Grok Bot on a cloud machine of its own + Claude Code on the workstation

Sentiment scheduled and on request
Reads what is said publicly about a sector or company and summarises the mood
Research and filings on request
Searches company documents and news, and extracts what touches a thesis
Fundamental deep dive on request
Fixed question sets per type of company: management, project, jurisdiction, drill results
Stress test on request
Builds out a worst-case scenario and works through which positions stand most exposed in it
Synthesis monthly
Pulls the separate pieces of research together into one picture, contradictions included
Feedback loop monthly
Looks back at earlier choices and which considerations turned out to be predictive

This column carries no names, and that is not modesty. The agents run on an external machine outside version control; they cannot be exported and cannot be checked from the outside. What cannot be checked should not be presented as an inventory. So what stands here is what the layer does, not how many parts it consists of.

The left column calculates and may produce numbers. The right column interprets and may not. That boundary is called the number lock.

01

The computation does not run in the orchestration layer

The heaviest calculation runs on a machine of its own and reports to the orchestrator afterwards, not the other way round. That is not a preference: the orchestrator sits elsewhere and cannot reach the compute environment. Turn it around and you get a system that works only as long as nobody looks at it.

02

There is a dead man’s switch on it

Every morning it is checked whether that day’s calculation has arrived. If there is nothing, an alarm goes off. A system that stops without saying so is more dangerous than no system, because you keep relying on it.

03

The language models write no numbers

In the daily briefing the numerical part is rendered straight from the database. The model may read and interpret those numbers, but it may not write them. That is not a precaution taken in advance but a measured lesson: while building the journal entry, a model once silently “corrected” a stated purchase price because it did not fit the rest of the picture. The correction was plausible, and wrong. Since then the lock sits in the code, not in the instruction.

The right-hand column is the first thing allowed to fall over. Agent platforms are young, they go down, and there is no check whatsoever you can put on such an outage from the outside. That is why no measurement hangs off it: if the interpretation drops out for a day, the regime, the technical state and the alarms keep running. The other way round, the system would be blind without anyone noticing.


Notable measurements

What the system measures and what it can historically mean. No forecast, no advice. Context. Per sector only the positions for which the system measures daily price data count; that number is shown with each sector, next to the number of positions in the portfolio taxonomy.

Measurements as at 5 Oct 2026 regime as at 5 Oct 2026

  • uranium

    13 of 22 positions measured

    deteriorated

    The sector shows structural deterioration across several indicators. This implies raised risk, not necessarily a decline, but an environment in which surprises are more likely.

    Structural deterioration across several indicators.

    GARCH expansion 6 of 13 measured positions

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

  • gold

    6 of 15 positions measured

    deteriorated

    The sector shows structural deterioration across several indicators. This implies raised risk, not necessarily a decline, but an environment in which surprises are more likely.

    Structural deterioration across several indicators.

    GARCH expansion 5 of 5 measured positions · 1 without a usable measurement

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

  • copper

    8 of 14 positions measured

    mixed

    The sector shows mixed signals. Some indicators are improving, others deteriorating. This implies a transition phase: the direction is unclear and can go either way.

    Mixed signals, transition phase.

    GARCH expansion 3 of 6 measured positions · 2 without a usable measurement

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

  • silver

    12 of 13 positions measured

    deteriorated

    The sector shows structural deterioration across several indicators. This implies raised risk, not necessarily a decline, but an environment in which surprises are more likely.

    Structural deterioration across several indicators.

    GARCH expansion 10 of 12 measured positions

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

  • energy

    0 of 11 positions measured

    deteriorated

    The sector shows structural deterioration across several indicators. This implies raised risk, not necessarily a decline, but an environment in which surprises are more likely.

    Structural deterioration across several indicators.

    no further notable measurements

  • btc-miner

    10 of 10 positions measured

    mixed

    The sector shows mixed signals. Some indicators are improving, others deteriorating. This implies a transition phase: the direction is unclear and can go either way.

    Mixed signals, transition phase.

    GARCH expansion 8 of 10 measured positions

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

  • crypto

    7 of 10 positions measured

    mixed

    The sector shows mixed signals. Some indicators are improving, others deteriorating. This implies a transition phase: the direction is unclear and can go either way.

    Mixed signals, transition phase.

    GARCH expansion 3 of 7 measured positions

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

  • mining-other

    8 of 10 positions measured

    mixed

    The sector shows mixed signals. Some indicators are improving, others deteriorating. This implies a transition phase: the direction is unclear and can go either way.

    Mixed signals, transition phase.

    GARCH expansion 3 of 6 measured positions · 2 without a usable measurement

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

  • other

    3 of 6 positions measured

    undetermined

    Not enough data to determine the regime.

    Not enough data to determine the regime.

    no further notable measurements

  • pgm

    5 of 6 positions measured

    deteriorated

    The sector shows structural deterioration across several indicators. This implies raised risk, not necessarily a decline, but an environment in which surprises are more likely.

    Structural deterioration across several indicators.

    GARCH expansion 5 of 5 measured positions

    A GARCH model, fitted on the price history of the past year, expects more movement over the coming days than there actually was over the last twenty trading days. That is an estimate by the model, not a price the market is putting on it (such as the implied volatility from options). It can point to an approaching price move or to raised uncertainty.

    The model expects more movement than there recently was.

What the system measures, not what I think. Not investment advice.

Trading style

Swing trading

Positions are held for days to weeks. No day trading, no trading on seconds. That choice determines the rest of the design: a system that measures on a daily basis does not have to react in milliseconds, and a human can still sit in between without the measurement going stale.

The charts are read on three timeframes, each with its own question. The weekly chart gives direction, the daily chart the decision point, the four-hour chart the entry level. A setup that convinces on one timeframe but contradicts itself on the other two is not a setup.

Style
Swing trading (days to weeks)
Direction
Weekly chart
Decision
Daily chart
Entry
4-hour chart

Markets

Commodities, mining, crypto equity

The working ground is commodities and mining (listed on the TSX and the TSX Venture in Toronto, the NASDAQ in New York and the ASX in Sydney), plus listed companies with direct crypto exposure.

That choice is not arbitrary. Commodity sectors move on their own drivers, and those drivers have little to do with one another: one sector reacts to production capacity, another to real interest rates, a third to industrial demand. Push them under one heading and you measure noise. So the system assesses the sectors separately, with its own set of drivers per sector.

Listings in different jurisdictions also bring different reporting standards for mining reserves. What counts as a confirmed reserve in one country is called something else elsewhere. A comparison that steps over that compares nothing.


Frames

What the conviction layer leans on

Two technical frames form the basis of the pattern recognition, complemented by fundamental analysis per sector.

Wyckoff

A frame that reads price movement as a sequence of accumulation and distribution phases, in which volume and price together show whether something is being built up or wound down. It delivers no forecast, but a classification: which phase is this instrument in, and what would that mean for what follows.

Elliott Wave

A frame that describes movement as repeating wave structures across multiple timeframes. Useful for placing a move in progress; useless as a certainty, because the same chart can often be counted in more than one way. It is used here as a hypothesis the other layers have to support, not as a conclusion.

Fundamental analysis

Different yardsticks apply per sector: cost structure, contracted offtake, capital requirements, the relation between market capitalisation and underlying assets. Those yardsticks determine whether a technically interesting setup also amounts to something fundamentally.

This page describes how the work is done. It is not advice and not a recommendation; see Legal.

Questions about how this works in practice?

A question about how the system calculates or where its limits lie? Send an email. The answer is about the method, not about your situation or your portfolio.