May-05-2023, 05:32 PM
(May-05-2023, 05:29 PM)deanhystad Wrote: Yes.
If you'd like more detail, please provide more detail about your problem. What kind of information are you sifting through? How do you identify the information you want to retrieve? What details of the information do you want to retain?
Example code, a small, not completely working example, would be a good start.
Hi. thanks for your response. I didn't include the code because it might be a bit much. But basically I am cycling through currency pairs and time frames to extract different moving averages of those currency pairs. What I want to do is use the information provided to give a score on each of the currency pairs to help me understand what might be better trades. I've managed to get exactly the data I am looking for, but I'm having difficulty figuring out how to score that data.
Here is the code:
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")