Python Forum
How do I extract information from this dataset?
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How do I extract information from this dataset?
#1
I wrote this code which loops around to extract the moving averages for different currency pairs on timeframes:

import krakenex
import pandas as pd

api = krakenex.API()

# Define currency pairs and their corresponding names
currency_pairs = [('XETHXXBT', 'ETH/BTC'), ('XXBTZEUR', 'BTC/EUR'), ('XXBTZUSD', 'BTC/USD'), ('XXBTZGBP', 'BTC/GBP'), ('XETHZEUR', 'ETH/EUR'), ('XETHZGBP', 'ETH/GBP'), ('XETHZUSD', 'ETH/USD'), ('EURGBP', 'EURGBP'), ('ZEURZUSD', 'EUR/USD'), ('ZGBPZUSD', 'GBP/USD'), ('PAXGXBT', 'PAXG/BTC'), ('PAXGETH', 'PAXG/ETH'), ('PAXGEUR', 'PAXG/EUR'), ('PAXGUSD', 'PAXG/USD'), ('XXRPXXBT', 'XRP/BTC'), ('XRPETH', 'XRP/ETH'), ('XXRPZEUR', 'XRP/EUR'), ('XRPGBP', 'XRP/GBP'), ('XXRPZUSD', 'XRP/USD')]
time_frames = ['1', '5', '15', '30', '60', '240', '1440', '10080']

for pair, pair_name in currency_pairs:
    for tf in time_frames:
        print(f"{tf} minute m/a ({pair_name})")

        # Fetch OHLC data for the given pair and time frame
        ohlc_data = api.query_public('OHLC', {'pair': pair, 'interval': tf})

        # Convert the data to a pandas dataframe
        df = pd.DataFrame(ohlc_data['result'][pair], columns=['time', 'open', 'high', 'low', 'close', 'vwap', 'volume', 'count'])
        df['time'] = pd.to_datetime(df['time'], unit='s')
        df.set_index('time', inplace=True)

        # Calculate the moving averages
        last_20_candles = df.iloc[-21:-1]
        last_20_close_prices = last_20_candles['close'].astype(float).tolist()
        avg_last_20_close_price = sum(last_20_close_prices) / len(last_20_close_prices)
        print(f"20 period m/a: {avg_last_20_close_price}")

        last_50_candles = df.iloc[-51:-1]
        last_50_close_prices = last_50_candles['close'].astype(float).tolist()
        avg_last_50_close_price = sum(last_50_close_prices) / len(last_50_close_prices)
        print(f"50 period m/a: {avg_last_50_close_price}")

        last_200_candles = df.iloc[-201:-1]
        last_200_close_prices = last_200_candles['close'].astype(float).tolist()
        avg_last_200_close_price = sum(last_200_close_prices) / len(last_200_close_prices)
        print(f"200 period m/a: {avg_last_200_close_price}")

        print("\n")
This gets the moving averages of several different types of currency pairs, on several timeframes.

What I'd like to be able to do is find a way to extract just one piece of information. So for example, just the 200 period moving average for the btc/usd pair on the 15 minute timeframe.

How would I go about doing this?
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
Question Need help for a python script to extract information from a list of files lephunghien 6 1,131 Jun-12-2023, 05:40 PM
Last Post: snippsat
  extract information from a file clarablanes 4 3,105 Nov-16-2018, 04:42 PM
Last Post: clarablanes

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020