PO_MIN_CONF
๐ฆ AthenaAI is an AI-powered ensemble machine-learning trading bot for PocketOption, built on BinaryOptionsToolsV2 โ Get it on GitLab
๐ฌ Need help? Join the Chipa Discord ยท โก Go no-code with ChipaEditor
The minimum model confidence, as a fraction between 0 and 1, required for a prediction to pass the first signal gate.
| Type | float (fraction, 0โ1) |
| Default | 0.63 |
| Required | No |
| Maps to | BotConfig.min_confidence |
| Read in | main.py (build_config()) |
What it does
build_config() parses it with float(env("PO_MIN_CONF", "0.63")) โ a non-numeric value raises ValueError and crashes at startup.
In _trade_loop() (src/bot.py), after the ensemble produces (direction, confidence), the confidence gate runs first among the signal-quality gates:
if confidence < self.cfg.min_confidence:
...
self._signal_history.clear()
continue
A below-threshold signal is skipped, a diagnostic line like โธ Low confidence: 61.2% (need 63.0%) dir=call regime=ranging is logged (at most every 30 s), and โ importantly โ the signal-confirmation history is cleared, so any multi-candle confirmation streak restarts from zero.
The value is also used elsewhere:
AdaptiveStrategy.should_trade()receivescfg.min_confidenceas a baseline; the adaptive layer applies itsconfidence_adjon top of this floor โ usually raising it (+5% when low-confidence trades are losing, +8% for a non-preferred direction), though it can also lower it slightly (โ3% when low-confidence trades are winning).- The startup banner logs the confidence band:
Confidence: 63%โ85%.
The default of 0.63 was raised from 0.60 in v6 because, per the comment in src/config.py, low-confidence trades lose.
Valid values
A fraction in [0, 1), and below PO_MAX_CONF. Note the scale: 0.63 means 63% โ setting 63 would reject every signal (confidence never exceeds 1.0). If PO_MIN_CONF โฅ PO_MAX_CONF, the two gates leave no passable window and the bot never trades.
Examples
export PO_MIN_CONF=0.65$env:PO_MIN_CONF = '0.65'# .env
PO_MIN_CONF=0.63Interactions
PO_MAX_CONFis the upper edge of the acceptance band.- Passing this gate is necessary but not sufficient โ the signal must still pass
PO_REQUIRE_ALIGNMENT, signal confirmation, the 5-minute trend check, and the adaptive gate. - Confidence โฅ 0.75 also biases the expiry selector toward longer expiries (
PO_EXPIRY_OPTIONS). - Stake size scales with confidence in
MoneyManager.compute_stake()(seePO_BASE_STAKE).
See also
๐ฌ Unsure how this interacts with the rest of the configuration? Ask in the Chipa Discord โ or prototype strategies no-code with ChipaEditor.