Python client for accessing Predictoor data and predictions on Ocean Protocol.
Install via pip:
pip install predictoor-data
Or install from source:
git clone https://github.com/oceanprotocol/predictoor-data
cd predictoor-data
pip install -e .
from predictoor_data import PredictoorClient
from datetime import datetime
# Initialize client
# private key can also be set using PREDICTOOR_PRIVATE_KEY env var
client = PredictoorClient(private_key="your-private-key") # private_key is optional
# Get current prediction
stake_up, stake_down = client.get_prediction("BTC/USDT", "5m")
print(f"Up stake: {stake_up/1e18} OCEAN")
print(f"Down stake: {stake_down/1e18} OCEAN")
# Fetch historical data
historical_data = client.fetch_historical(
datetime(2024, 9, 1),
datetime(2024, 9, 30),
"BTC/USDT",
"5m"
)
client = PredictoorClient(private_key=None)
private_key
: Optional. Your private key for authentication. Can also be set viaPREDICTOOR_PRIVATE_KEY
environment variable.
Get current prediction for a trading pair. If the subscription doesn't exist raises an error.
stake_up, stake_down = client.get_prediction("BTC/USDT", "5m")
pair
: Trading pair (e.g., "BTC/USDT", "ETH/USDT")timeframe
: Time interval ("5m", "1h")- Returns: Tuple of (stake_up, stake_down) in wei
If the subscription doesn't exist, subscribes to a trading pair and get current prediction.
stake_up, stake_down = client.subscribe_and_get_prediction("BTC/USDT", "5m")
fetch_historical(start_date: datetime, end_date: datetime, pair: str, timeframe: str) -> pd.DataFrame
Fetch historical prediction data.
df = client.fetch_historical(
datetime(2023, 1, 1),
datetime(2023, 1, 31),
"BTC/USDT",
"5m"
)
Returns DataFrame with columns:
slot_start
: Start time of prediction slotslot_target
: Target time for predictionstake_up
: Amount staked on price going upstake_down
: Amount staked on price going down
Check predictoor.ai