Global temperature anomaly
Monthly. Five institutional datasets (HadCRUT5, NOAAGlobalTemp, GISTEMP, ERA5, JRA-3Q); median with at least 3 valid sources.
IN DEVELOPMENTBETA IN DEVELOPMENT / NOT YET AUDITED
Opsikom is an open, free oracle. Independent operators read the same public sources and sign what they see; a contract then publishes a single value that anyone can use. No subscription, no waiting list.
The contract never trusts a single operator: only what the majority confirms counts.
Each one downloads the data from the original sources on their own. If operators copied one another, the protection would disappear, so every operator must read independently.
Each operator signs their own value, off-chain. Signing requires no funds: whoever relays the signatures pays for the on-chain submission.
It verifies the signatures, requires a quorum and a majority of the feed's operators, and publishes the median. A single outlier cannot move the result.
Five operators read the same figure. Make one of them wrong and watch what happens to the average and to the median.
Example values for demonstration only. They are not real feed data.
We start with climate data: slow-moving, with public institutional sources. Others can be added on request, with a sheet declaring sources, definition and frequency.
Monthly. Five institutional datasets (HadCRUT5, NOAAGlobalTemp, GISTEMP, ERA5, JRA-3Q); median with at least 3 valid sources.
IN DEVELOPMENTMonthly. Satellite altimetry from institutional sources.
PLANNEDMonthly. Institutional measurement networks, value in ppm.
PLANNEDPublic, numeric data with at least 3 independent sources and a clear definition.
OPENA feed reports what its sources publish. If a source is wrong or later revised, the feed follows the source; the sources used are declared for each feed.
Reading a feed is free and permissionless. The interface is compatible with Chainlink aggregators: if you already use one, you only change the address.
// Solidity
AggregatorV3Interface feed =
AggregatorV3Interface(FEED_ADDRESS);
(, int256 answer,, uint256 updatedAt,) =
feed.latestRoundData();
// always check that the data is not stale
require(block.timestamp - updatedAt < 35 days);
// the value has feed.decimals() decimal places
Very little is needed: a small always-on computer, such as a Raspberry Pi 3 or an inexpensive VPS. The node reads the sources and signs; it does not handle funds.
One-command installation and the "outbound" mode (no public address, no open ports) are in preparation. If you want to be among the first operators, write to us.
ApplyA free oracle is used at your own risk. That is why we say plainly how things stand.
The code has not yet had an independent audit. Use it on testnet or with little value at stake until it has been verified.
Opsikom has no coin of its own. Any token using its name is not ours.
It will never ask you to connect a wallet, to sign transactions from the website, or to hand over keys or seed phrases. If anyone does so in Opsikom's name, it is a scam.
The value is the median of the declared sources. If the sources are wrong or later corrected, the feed follows them. Anyone reporting an error in our code or nodes is welcome.