created fine tune set

This commit is contained in:
Yasha Sheynin 2025-02-03 23:26:28 -05:00
parent 16d1a7e1fa
commit e6220846d2
30 changed files with 25902 additions and 71 deletions

File diff suppressed because one or more lines are too long

View File

@ -31,6 +31,7 @@ from datetime import datetime
import pandas as pd
from tqdm import tqdm
import nest_asyncio
import logging # Added logging im
from market_predictor.market_data_fetcher import MarketDataFetcher
from market_predictor.data_processor import MarketDataProcessor

View File

@ -1,6 +1,9 @@
import pandas as pd
import numpy as np
from typing import List, Dict
import logging
# Optionally configure logging
logging.basicConfig(level=logging.INFO)
class MarketDataProcessor:
REQUIRED_COLUMNS = ['Close', 'VWAP', 'Volume']

View File

@ -1,13 +1,40 @@
import sys
import os
import json
import asyncio
import pandas as pd
import logging # Added logging import
from datetime import datetime, timedelta
from tqdm import tqdm
from openai import OpenAI
from typing import List, Dict, Optional, Any
from collections import Counter
import sys
import os
from openai import RateLimitError # Add import for rate limit errors
import random # Added random import
# Create logs directory
log_dir = os.path.join(os.path.dirname(__file__), 'logs')
os.makedirs(log_dir, exist_ok=True)
# # Configure comprehensive logging
# log_file = os.path.join(log_dir, f'fine_tune_{datetime.now().strftime("%Y%m%d_%H%M%S")}.log')
# # Setup file handler
# file_handler = logging.FileHandler(log_file)
# file_handler.setLevel(logging.DEBUG)
# formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
# file_handler.setFormatter(formatter)
# # Configure root logger
# root_logger = logging.getLogger()
# root_logger.setLevel(logging.DEBUG)
# root_logger.handlers = [file_handler] # Remove default handlers and add file handler
# # Ensure all other loggers inherit from root but don't print to console
# for name in ['httpx', 'faiss', 'openai', 'urllib3']:
# logger = logging.getLogger(name)
# logger.handlers = [] # Remove any default handlers
# logger.propagate = True # Ensure propagation to root logger
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from main import analyze_market_data
@ -18,13 +45,26 @@ from .rag_engine import RAGEngine
from .utils.formatting import FormatMixin
class SymbolProcessor:
"""Tracks and processes single symbol with progress"""
def __init__(self, symbol: str):
self.symbol = symbol
self.pbar = tqdm(total=4, desc=f"Processing {symbol}", position=0, leave=True)
def update(self, step: str):
self.pbar.update(1)
self.pbar.set_description(f"{self.symbol}: {step}")
def close(self):
self.pbar.close()
class FineTuneDatasetGenerator:
def __init__(
self,
symbols: List[str],
lookback_days: int = 3,
training_window_size: int = 65,
inference_window_size: int = 8,
training_window_size: int = 60,
inference_window_size: int = 12,
inference_offset: int = 1,
interval: str = "5m",
):
@ -36,47 +76,127 @@ class FineTuneDatasetGenerator:
self.interval = interval
self.client = OpenAI(api_key=OPENAI_API_KEY)
self.rag_engine = RAGEngine()
# Reduce concurrent API calls to 2
self.api_semaphore = asyncio.Semaphore(2)
self.MIN_RETRY_DELAY = 1
self.MAX_RETRY_DELAY = 30
self.file_lock = asyncio.Lock() # Add lock for file access
def _validate_predictions(self, predictions: Any) -> bool:
"""Validate prediction results."""
if predictions is None:
return False
if isinstance(predictions, pd.DataFrame):
return not predictions.empty
if isinstance(predictions, list):
return len(predictions) > 0
return False
async def process_symbol(self, symbol: str) -> List[Dict]:
"""Process single symbol with progress tracking and validation"""
examples = []
processor = SymbolProcessor(symbol)
try:
# 1. Fetch Data
market_data = await self.fetch_market_data(symbol)
if market_data is None or market_data.empty:
logging.error(f"{symbol}: No market data available")
return examples
processor.update("Data fetched")
# 2. Initialize processor
data_processor = MarketDataProcessor(
df=market_data,
training_window_size=self.training_window_size,
inference_window_size=self.inference_window_size,
inference_offset=self.inference_offset
)
processor.update("Processor initialized")
# 3. Get predictions with validation
predictions = await self._get_predictions_with_retry(market_data)
if not self._validate_predictions(predictions):
logging.error(f"{symbol}: Invalid predictions format or empty results")
return examples
processor.update("Predictions generated")
# 4. Create examples
predictions_df = predictions if isinstance(predictions, pd.DataFrame) else pd.DataFrame(predictions)
correct_predictions = predictions_df[
predictions_df['predicted_movement'] == predictions_df['actual_movement']
]
for _, row in correct_predictions.iterrows():
example = await self._create_training_example(row, data_processor)
if example:
examples.append(example)
processor.update(f"Created {len(examples)} examples")
processor.close()
except Exception as e:
logging.error(f"Error processing {symbol}: {str(e)}", exc_info=True)
return examples
async def _get_predictions_with_retry(self, market_data: pd.DataFrame) -> Optional[pd.DataFrame]:
"""Get predictions with retry logic and validation"""
MAX_RETRIES = 5
retry_count = 0
while retry_count < MAX_RETRIES:
try:
async with self.api_semaphore:
await asyncio.sleep(1)
predictions = await analyze_market_data(
market_data,
training_window_size=self.training_window_size,
inference_window_size=self.inference_window_size,
inference_offset=self.inference_offset
)
if predictions is None:
raise ValueError("Received None predictions")
return predictions
except Exception as e:
retry_count += 1
if retry_count == MAX_RETRIES:
logging.error(f"Max retries reached: {str(e)}")
return None
delay = min(self.MAX_RETRY_DELAY,
self.MIN_RETRY_DELAY * (2 ** retry_count))
await asyncio.sleep(delay)
return None
async def generate_dataset(self) -> List[Dict]:
"""Generate fine-tuning dataset from correct predictions."""
"""Generate dataset with concurrent processing and safe saving."""
batch_size = 2
all_examples = []
for symbol in tqdm(self.symbols, desc="Processing symbols"):
try:
market_data = await self.fetch_market_data(symbol)
if market_data is None or market_data.empty:
continue
# Initialize processor
self.processor = MarketDataProcessor(
df=market_data,
training_window_size=self.training_window_size,
inference_window_size=self.inference_window_size,
inference_offset=self.inference_offset
)
# Generate predictions
predictions = await analyze_market_data(
market_data,
training_window_size=self.training_window_size,
inference_window_size=self.inference_window_size,
inference_offset=self.inference_offset
)
if not isinstance(predictions, pd.DataFrame):
predictions = pd.DataFrame(predictions)
# Filter and create examples
correct_predictions = predictions[
predictions['predicted_movement'] == predictions['actual_movement']
]
for _, row in correct_predictions.iterrows():
example = await self._create_training_example(row)
if example:
all_examples.append(example)
except Exception as e:
print(f"Error processing {symbol}: {e}")
continue
for i in range(0, len(self.symbols), batch_size):
batch = self.symbols[i:i+batch_size]
tasks = [self.process_symbol(symbol) for symbol in batch]
results = await asyncio.gather(*tasks)
# Process each symbol's results
for symbol, examples in zip(batch, results):
if examples:
print(f"Got {len(examples)} examples from {symbol}")
all_examples.extend(examples)
# Save incrementally with locking
await self.save_jsonl(examples)
# Add delay between batches
await asyncio.sleep(2)
return all_examples
async def fetch_market_data(self, symbol: str) -> Optional[pd.DataFrame]:
@ -98,24 +218,27 @@ class FineTuneDatasetGenerator:
print(f"Error fetching data for {symbol}: {e}")
return None
async def _create_training_example(self, pred: pd.Series) -> Optional[Dict]:
"""Reconstruct full prompt for a correct prediction."""
async def _create_training_example(self, pred: pd.Series, processor: MarketDataProcessor) -> Optional[Dict]:
"""Reconstruct full prompt for a correct prediction using the provided processor."""
try:
window = self.processor.reconstruct_prediction_window(pred['timestamp_prediction'])
current_context = self.processor.combine_intervals(window['current'])
training = self.processor.combine_intervals(window['training'], is_training=True)
self.rag_engine.create_vectorstore(training),
window = processor.reconstruct_prediction_window(pred['timestamp_prediction'])
# Explicitly check that 'current' and 'training' are present and non-empty
current_data = window.get('current')
training_data = window.get('training')
if current_data is None or (hasattr(current_data, "empty") and current_data.empty):
raise Exception("Empty window provided for current data")
if training_data is None or (hasattr(training_data, "empty") and training_data.empty):
raise Exception("Empty window provided for training data")
current_context = processor.combine_intervals(current_data)
training_context = processor.combine_intervals(training_data, is_training=True)
self.rag_engine.create_vectorstore(training_context)
historical_context = self.rag_engine.get_relevant_context(current_context)
# print(f'historical_context : {historical_context}')
example = {
"messages": [
{
"role": "system",
"content": self.rag_engine.system_prompt # from RAGEngine
"content": self.rag_engine.system_prompt
},
{
"role": "user",
@ -146,15 +269,16 @@ class FineTuneDatasetGenerator:
return None
async def save_jsonl(self, examples: List[Dict], output_path: str = "fine_tune_data.jsonl"):
"""Save examples to JSONL."""
try:
with open(output_path, 'w', encoding='utf-8') as f:
for ex in examples:
line = json.dumps(ex, ensure_ascii=False)
f.write(line + "\n")
print(f"Saved {len(examples)} examples to {output_path}")
except Exception as e:
print(f"Error saving JSONL: {e}")
"""Thread-safe save to JSONL."""
async with self.file_lock:
try:
with open(output_path, 'a', encoding='utf-8') as f:
for ex in examples:
line = json.dumps(ex, ensure_ascii=False)
f.write(line + "\n")
print(f"Appended {len(examples)} examples to {output_path}")
except Exception as e:
print(f"Error saving JSONL: {e}")
async def start_fine_tuning_job(self, dataset_path: str) -> None:
"""Upload file and create fine-tuning job"""
@ -180,7 +304,7 @@ class FineTuneDatasetGenerator:
print("Creating fine-tuning job...")
job = client.fine_tuning.jobs.create(
training_file=file_id,
model="gpt-4o-mini-2024-07-18", # Changed from invalid model name
model="gpt-4o-mini-2024-07-18",
hyperparameters={
"n_epochs": 3
}
@ -197,13 +321,19 @@ class FineTuneDatasetGenerator:
# If run standalone
async def main():
symbols = ["BTC-USD", 'AAPL']# "ETH-USD", 'AAPL', 'TSLA', 'NVDA']
symbols = [ "ETH-USD", 'NVDA', 'BTC-USD', 'AAPL', 'TSLA',
'MSFT', 'META', 'AMZN', 'GOOGL', 'LTC-USD', 'DOGE-USD']
generator = FineTuneDatasetGenerator(symbols)
# Clear existing file
with open("fine_tune_data.jsonl", 'w') as f:
pass
examples = await generator.generate_dataset()
if examples:
output_file = "fine_tune_data.jsonl"
await generator.save_jsonl(examples, output_file)
await generator.start_fine_tuning_job(output_file)
print(f"\nTotal examples collected: {len(examples)}")
await generator.start_fine_tuning_job("fine_tune_data.jsonl")
else:
print("No valid examples collected.")

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,106 @@
2025-02-03 22:00:19,072 - asyncio - DEBUG - Using selector: KqueueSelector
2025-02-03 22:00:19,148 - yfinance - DEBUG - Entering history()
2025-02-03 22:00:19,150 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_kv" ("key" VARCHAR(255) NOT NULL PRIMARY KEY, "value" VARCHAR(255)) WITHOUT ROWID', [])
2025-02-03 22:00:19,150 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['ETH-USD', 1, 0])
2025-02-03 22:00:19,150 - yfinance - DEBUG - Entering history()
2025-02-03 22:00:19,151 - yfinance - DEBUG - ETH-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:00:19,151 - yfinance - DEBUG - Entering get()
2025-02-03 22:00:19,151 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:00:19,151 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/ETH-USD
2025-02-03 22:00:19,151 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:00:19,151 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:00:19,151 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:00:19,151 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:00:19,152 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_cookieschema" ("strategy" VARCHAR(255) NOT NULL PRIMARY KEY, "fetch_date" DATETIME NOT NULL, "cookie_bytes" BLOB NOT NULL) WITHOUT ROWID', [])
2025-02-03 22:00:19,152 - peewee - DEBUG - ('SELECT "t1"."strategy", "t1"."fetch_date", "t1"."cookie_bytes" FROM "_cookieschema" AS "t1" WHERE ("t1"."strategy" = ?) LIMIT ? OFFSET ?', ['basic', 1, 0])
2025-02-03 22:00:19,155 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): fc.yahoo.com:443
2025-02-03 22:00:19,225 - urllib3.connectionpool - DEBUG - https://fc.yahoo.com:443 "GET / HTTP/1.1" 404 4744
2025-02-03 22:00:19,226 - peewee - DEBUG - ('DELETE FROM "_cookieschema" WHERE ("_cookieschema"."strategy" = ?)', ['basic'])
2025-02-03 22:00:19,229 - peewee - DEBUG - ('BEGIN', None)
2025-02-03 22:00:19,229 - peewee - DEBUG - ('INSERT INTO "_cookieschema" ("strategy", "fetch_date", "cookie_bytes") VALUES (?, ?, ?)', ['basic', '2025-02-03T22:00:19.229258', <memory at 0x13455d0c0>])
2025-02-03 22:00:19,229 - yfinance - DEBUG - fetched basic cookie = <Cookie A3=d=AQABBMOCoWcCEFIiT8zpkLjme6QD8cflloUFEgEBAQHUomerZ9xH0iMA_eMAAA&S=AQAAAvjL0JbQmJL10SEEzN3bil0 for .yahoo.com/>
2025-02-03 22:00:19,229 - yfinance - DEBUG - reusing cookie
2025-02-03 22:00:19,230 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query1.finance.yahoo.com:443
2025-02-03 22:00:19,292 - urllib3.connectionpool - DEBUG - https://query1.finance.yahoo.com:443 "GET /v1/test/getcrumb HTTP/1.1" 200 11
2025-02-03 22:00:19,292 - yfinance - DEBUG - crumb = 'j1NsOs24VUb'
2025-02-03 22:00:19,292 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:00:19,292 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:00:19,294 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query2.finance.yahoo.com:443
2025-02-03 22:00:19,386 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/ETH-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:00:19,413 - yfinance - DEBUG - response code=200
2025-02-03 22:00:19,413 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:00:19,414 - yfinance - DEBUG - Exiting get()
2025-02-03 22:00:19,425 - yfinance - DEBUG - ETH-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:00:19,437 - yfinance - DEBUG - ETH-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:00:19,442 - yfinance - DEBUG - ETH-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:00:19,447 - yfinance - DEBUG - ETH-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:00:19,447 - yfinance - DEBUG - Exiting history()
2025-02-03 22:00:19,447 - yfinance - DEBUG - Exiting history()
2025-02-03 22:00:19,454 - root - ERROR - Error processing ETH-USD: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
Traceback (most recent call last):
File "/Users/ysheynin/deepseek_playground/market_predictor/market_predictor/fine_tune_dataset_generator.py", line 202, in process_symbol
window_data = self._get_window_data(market_data, timestamp)
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
2025-02-03 22:00:19,457 - yfinance - DEBUG - Entering history()
2025-02-03 22:00:19,458 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['NVDA', 1, 0])
2025-02-03 22:00:19,458 - yfinance - DEBUG - Entering history()
2025-02-03 22:00:19,458 - yfinance - DEBUG - NVDA: Yahoo GET parameters: {'period1': '2025-01-31 00:00:00-05:00', 'period2': '2025-02-03 00:00:00-05:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:00:19,458 - yfinance - DEBUG - Entering get()
2025-02-03 22:00:19,458 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:00:19,458 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/NVDA
2025-02-03 22:00:19,458 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:00:19,458 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:00:19,458 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:00:19,458 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:00:19,458 - yfinance - DEBUG - reusing cookie
2025-02-03 22:00:19,458 - yfinance - DEBUG - reusing crumb
2025-02-03 22:00:19,458 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:00:19,458 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:00:19,512 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/NVDA?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:00:19,513 - yfinance - DEBUG - response code=200
2025-02-03 22:00:19,513 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:00:19,513 - yfinance - DEBUG - Exiting get()
2025-02-03 22:00:19,514 - yfinance - DEBUG - NVDA: yfinance received OHLC data: 2025-01-31 14:30:00 -> 2025-01-31 20:55:00
2025-02-03 22:00:19,518 - yfinance - DEBUG - NVDA: OHLC after cleaning: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:00:19,520 - yfinance - DEBUG - NVDA: OHLC after combining events: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:00:19,524 - yfinance - DEBUG - NVDA: yfinance returning OHLC: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:00:19,524 - yfinance - DEBUG - Exiting history()
2025-02-03 22:00:19,524 - yfinance - DEBUG - Exiting history()
2025-02-03 22:00:19,526 - root - ERROR - Error processing NVDA: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
Traceback (most recent call last):
File "/Users/ysheynin/deepseek_playground/market_predictor/market_predictor/fine_tune_dataset_generator.py", line 202, in process_symbol
window_data = self._get_window_data(market_data, timestamp)
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
2025-02-03 22:00:21,535 - yfinance - DEBUG - Entering history()
2025-02-03 22:00:21,535 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['BTC-USD', 1, 0])
2025-02-03 22:00:21,536 - yfinance - DEBUG - Entering history()
2025-02-03 22:00:21,536 - yfinance - DEBUG - BTC-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:00:21,536 - yfinance - DEBUG - Entering get()
2025-02-03 22:00:21,537 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:00:21,537 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/BTC-USD
2025-02-03 22:00:21,537 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:00:21,537 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:00:21,537 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:00:21,537 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:00:21,537 - yfinance - DEBUG - reusing cookie
2025-02-03 22:00:21,537 - yfinance - DEBUG - reusing crumb
2025-02-03 22:00:21,537 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:00:21,537 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:00:21,582 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/BTC-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:00:21,597 - yfinance - DEBUG - response code=200
2025-02-03 22:00:21,597 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:00:21,597 - yfinance - DEBUG - Exiting get()
2025-02-03 22:00:21,602 - yfinance - DEBUG - BTC-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:00:21,609 - yfinance - DEBUG - BTC-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:00:21,612 - yfinance - DEBUG - BTC-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:00:21,616 - yfinance - DEBUG - BTC-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:00:21,617 - yfinance - DEBUG - Exiting history()
2025-02-03 22:00:21,617 - yfinance - DEBUG - Exiting history()
2025-02-03 22:00:21,621 - root - ERROR - Error processing BTC-USD: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
Traceback (most recent call last):
File "/Users/ysheynin/deepseek_playground/market_predictor/market_predictor/fine_tune_dataset_generator.py", line 202, in process_symbol
window_data = self._get_window_data(market_data, timestamp)
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'

View File

@ -0,0 +1,101 @@
2025-02-03 22:02:44,416 - asyncio - DEBUG - Using selector: KqueueSelector
2025-02-03 22:02:44,495 - yfinance - DEBUG - Entering history()
2025-02-03 22:02:44,496 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_kv" ("key" VARCHAR(255) NOT NULL PRIMARY KEY, "value" VARCHAR(255)) WITHOUT ROWID', [])
2025-02-03 22:02:44,496 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['ETH-USD', 1, 0])
2025-02-03 22:02:44,496 - yfinance - DEBUG - Entering history()
2025-02-03 22:02:44,496 - yfinance - DEBUG - ETH-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:02:44,497 - yfinance - DEBUG - Entering get()
2025-02-03 22:02:44,497 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:02:44,497 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/ETH-USD
2025-02-03 22:02:44,497 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:02:44,497 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:02:44,497 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:02:44,497 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:02:44,498 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_cookieschema" ("strategy" VARCHAR(255) NOT NULL PRIMARY KEY, "fetch_date" DATETIME NOT NULL, "cookie_bytes" BLOB NOT NULL) WITHOUT ROWID', [])
2025-02-03 22:02:44,498 - peewee - DEBUG - ('SELECT "t1"."strategy", "t1"."fetch_date", "t1"."cookie_bytes" FROM "_cookieschema" AS "t1" WHERE ("t1"."strategy" = ?) LIMIT ? OFFSET ?', ['basic', 1, 0])
2025-02-03 22:02:44,498 - yfinance - DEBUG - loaded persistent cookie
2025-02-03 22:02:44,498 - yfinance - DEBUG - reusing cookie
2025-02-03 22:02:44,500 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query1.finance.yahoo.com:443
2025-02-03 22:02:44,581 - urllib3.connectionpool - DEBUG - https://query1.finance.yahoo.com:443 "GET /v1/test/getcrumb HTTP/1.1" 200 11
2025-02-03 22:02:44,581 - yfinance - DEBUG - crumb = 'j1NsOs24VUb'
2025-02-03 22:02:44,581 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:02:44,581 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:02:44,582 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query2.finance.yahoo.com:443
2025-02-03 22:02:44,662 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/ETH-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:02:44,692 - yfinance - DEBUG - response code=200
2025-02-03 22:02:44,692 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:02:44,692 - yfinance - DEBUG - Exiting get()
2025-02-03 22:02:44,702 - yfinance - DEBUG - ETH-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:02:44,713 - yfinance - DEBUG - ETH-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:02:44,717 - yfinance - DEBUG - ETH-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:02:44,722 - yfinance - DEBUG - ETH-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:02:44,722 - yfinance - DEBUG - Exiting history()
2025-02-03 22:02:44,722 - yfinance - DEBUG - Exiting history()
2025-02-03 22:02:44,727 - root - ERROR - Error processing ETH-USD: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
Traceback (most recent call last):
File "/Users/ysheynin/deepseek_playground/market_predictor/market_predictor/fine_tune_dataset_generator.py", line 262, in process_symbol
window_data = self._get_window_data(market_data, timestamp)
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
2025-02-03 22:02:44,731 - yfinance - DEBUG - Entering history()
2025-02-03 22:02:44,731 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['NVDA', 1, 0])
2025-02-03 22:02:44,731 - yfinance - DEBUG - Entering history()
2025-02-03 22:02:44,731 - yfinance - DEBUG - NVDA: Yahoo GET parameters: {'period1': '2025-01-31 00:00:00-05:00', 'period2': '2025-02-03 00:00:00-05:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:02:44,731 - yfinance - DEBUG - Entering get()
2025-02-03 22:02:44,731 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:02:44,731 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/NVDA
2025-02-03 22:02:44,731 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:02:44,732 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:02:44,732 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:02:44,732 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:02:44,732 - yfinance - DEBUG - reusing cookie
2025-02-03 22:02:44,732 - yfinance - DEBUG - reusing crumb
2025-02-03 22:02:44,732 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:02:44,732 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:02:44,784 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/NVDA?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:02:44,784 - yfinance - DEBUG - response code=200
2025-02-03 22:02:44,785 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:02:44,785 - yfinance - DEBUG - Exiting get()
2025-02-03 22:02:44,786 - yfinance - DEBUG - NVDA: yfinance received OHLC data: 2025-01-31 14:30:00 -> 2025-01-31 20:55:00
2025-02-03 22:02:44,790 - yfinance - DEBUG - NVDA: OHLC after cleaning: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:02:44,792 - yfinance - DEBUG - NVDA: OHLC after combining events: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:02:44,795 - yfinance - DEBUG - NVDA: yfinance returning OHLC: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:02:44,795 - yfinance - DEBUG - Exiting history()
2025-02-03 22:02:44,795 - yfinance - DEBUG - Exiting history()
2025-02-03 22:02:44,797 - root - ERROR - Error processing NVDA: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
Traceback (most recent call last):
File "/Users/ysheynin/deepseek_playground/market_predictor/market_predictor/fine_tune_dataset_generator.py", line 262, in process_symbol
window_data = self._get_window_data(market_data, timestamp)
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
2025-02-03 22:02:46,806 - yfinance - DEBUG - Entering history()
2025-02-03 22:02:46,807 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['BTC-USD', 1, 0])
2025-02-03 22:02:46,808 - yfinance - DEBUG - Entering history()
2025-02-03 22:02:46,808 - yfinance - DEBUG - BTC-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:02:46,808 - yfinance - DEBUG - Entering get()
2025-02-03 22:02:46,808 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:02:46,808 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/BTC-USD
2025-02-03 22:02:46,808 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:02:46,809 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:02:46,809 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:02:46,809 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:02:46,809 - yfinance - DEBUG - reusing cookie
2025-02-03 22:02:46,809 - yfinance - DEBUG - reusing crumb
2025-02-03 22:02:46,809 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:02:46,809 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:02:46,864 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/BTC-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:02:46,875 - yfinance - DEBUG - response code=200
2025-02-03 22:02:46,875 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:02:46,875 - yfinance - DEBUG - Exiting get()
2025-02-03 22:02:46,881 - yfinance - DEBUG - BTC-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:02:46,889 - yfinance - DEBUG - BTC-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:02:46,892 - yfinance - DEBUG - BTC-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:02:46,899 - yfinance - DEBUG - BTC-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:02:46,899 - yfinance - DEBUG - Exiting history()
2025-02-03 22:02:46,899 - yfinance - DEBUG - Exiting history()
2025-02-03 22:02:46,904 - root - ERROR - Error processing BTC-USD: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'
Traceback (most recent call last):
File "/Users/ysheynin/deepseek_playground/market_predictor/market_predictor/fine_tune_dataset_generator.py", line 262, in process_symbol
window_data = self._get_window_data(market_data, timestamp)
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'FineTuneDatasetGenerator' object has no attribute '_get_window_data'

View File

@ -0,0 +1,68 @@
2025-02-03 22:05:06,180 - asyncio - DEBUG - Using selector: KqueueSelector
2025-02-03 22:05:06,254 - yfinance - DEBUG - Entering history()
2025-02-03 22:05:06,255 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_kv" ("key" VARCHAR(255) NOT NULL PRIMARY KEY, "value" VARCHAR(255)) WITHOUT ROWID', [])
2025-02-03 22:05:06,255 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['ETH-USD', 1, 0])
2025-02-03 22:05:06,255 - yfinance - DEBUG - Entering history()
2025-02-03 22:05:06,255 - yfinance - DEBUG - ETH-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:05:06,255 - yfinance - DEBUG - Entering get()
2025-02-03 22:05:06,255 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:05:06,256 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/ETH-USD
2025-02-03 22:05:06,256 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:05:06,256 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:05:06,256 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:05:06,256 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:05:06,256 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_cookieschema" ("strategy" VARCHAR(255) NOT NULL PRIMARY KEY, "fetch_date" DATETIME NOT NULL, "cookie_bytes" BLOB NOT NULL) WITHOUT ROWID', [])
2025-02-03 22:05:06,256 - peewee - DEBUG - ('SELECT "t1"."strategy", "t1"."fetch_date", "t1"."cookie_bytes" FROM "_cookieschema" AS "t1" WHERE ("t1"."strategy" = ?) LIMIT ? OFFSET ?', ['basic', 1, 0])
2025-02-03 22:05:06,256 - yfinance - DEBUG - loaded persistent cookie
2025-02-03 22:05:06,256 - yfinance - DEBUG - reusing cookie
2025-02-03 22:05:06,258 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query1.finance.yahoo.com:443
2025-02-03 22:05:06,345 - urllib3.connectionpool - DEBUG - https://query1.finance.yahoo.com:443 "GET /v1/test/getcrumb HTTP/1.1" 200 11
2025-02-03 22:05:06,346 - yfinance - DEBUG - crumb = 'j1NsOs24VUb'
2025-02-03 22:05:06,346 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:05:06,346 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:05:06,347 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query2.finance.yahoo.com:443
2025-02-03 22:05:06,413 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/ETH-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:05:06,432 - yfinance - DEBUG - response code=200
2025-02-03 22:05:06,432 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:05:06,432 - yfinance - DEBUG - Exiting get()
2025-02-03 22:05:06,438 - yfinance - DEBUG - ETH-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:05:06,444 - yfinance - DEBUG - ETH-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:05:06,447 - yfinance - DEBUG - ETH-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:05:06,451 - yfinance - DEBUG - ETH-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:05:06,451 - yfinance - DEBUG - Exiting history()
2025-02-03 22:05:06,451 - yfinance - DEBUG - Exiting history()
2025-02-03 22:05:06,456 - root - WARNING - Insufficient data for window at 2025-01-31 09:30:00+00:00
2025-02-03 22:05:06,457 - yfinance - DEBUG - Entering history()
2025-02-03 22:05:06,457 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['NVDA', 1, 0])
2025-02-03 22:05:06,457 - yfinance - DEBUG - Entering history()
2025-02-03 22:05:06,458 - yfinance - DEBUG - NVDA: Yahoo GET parameters: {'period1': '2025-01-31 00:00:00-05:00', 'period2': '2025-02-03 00:00:00-05:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:05:06,458 - yfinance - DEBUG - Entering get()
2025-02-03 22:05:06,458 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:05:06,458 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/NVDA
2025-02-03 22:05:06,458 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:05:06,458 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:05:06,458 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:05:06,458 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:05:06,458 - yfinance - DEBUG - reusing cookie
2025-02-03 22:05:06,458 - yfinance - DEBUG - reusing crumb
2025-02-03 22:05:06,458 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:05:06,458 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:05:06,492 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/NVDA?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:05:06,492 - yfinance - DEBUG - response code=200
2025-02-03 22:05:06,492 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:05:06,492 - yfinance - DEBUG - Exiting get()
2025-02-03 22:05:06,494 - yfinance - DEBUG - NVDA: yfinance received OHLC data: 2025-01-31 14:30:00 -> 2025-01-31 20:55:00
2025-02-03 22:05:06,500 - yfinance - DEBUG - NVDA: OHLC after cleaning: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:05:06,502 - yfinance - DEBUG - NVDA: OHLC after combining events: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:05:06,505 - yfinance - DEBUG - NVDA: yfinance returning OHLC: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:05:06,505 - yfinance - DEBUG - Exiting history()
2025-02-03 22:05:06,505 - yfinance - DEBUG - Exiting history()
2025-02-03 22:05:06,507 - root - WARNING - Insufficient data for window at 2025-01-31 09:30:00-05:00
2025-02-03 22:05:07,527 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:05:07,533 - root - WARNING - Insufficient data for window at 2025-01-31 09:35:00+00:00
2025-02-03 22:05:07,646 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:05:07,647 - root - WARNING - Insufficient data for window at 2025-01-31 09:35:00-05:00
2025-02-03 22:05:07,647 - root - INFO - Rate limit approaching, waiting 59s
2025-02-03 22:05:08,715 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:05:08,718 - root - WARNING - Insufficient data for window at 2025-01-31 09:40:00+00:00
2025-02-03 22:05:08,719 - root - INFO - Rate limit approaching, waiting 58s

View File

@ -0,0 +1,68 @@
2025-02-03 22:06:51,037 - asyncio - DEBUG - Using selector: KqueueSelector
2025-02-03 22:06:51,114 - yfinance - DEBUG - Entering history()
2025-02-03 22:06:51,115 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_kv" ("key" VARCHAR(255) NOT NULL PRIMARY KEY, "value" VARCHAR(255)) WITHOUT ROWID', [])
2025-02-03 22:06:51,116 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['ETH-USD', 1, 0])
2025-02-03 22:06:51,116 - yfinance - DEBUG - Entering history()
2025-02-03 22:06:51,116 - yfinance - DEBUG - ETH-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:06:51,116 - yfinance - DEBUG - Entering get()
2025-02-03 22:06:51,116 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:06:51,116 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/ETH-USD
2025-02-03 22:06:51,116 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:06:51,116 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:06:51,116 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:06:51,116 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:06:51,116 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_cookieschema" ("strategy" VARCHAR(255) NOT NULL PRIMARY KEY, "fetch_date" DATETIME NOT NULL, "cookie_bytes" BLOB NOT NULL) WITHOUT ROWID', [])
2025-02-03 22:06:51,117 - peewee - DEBUG - ('SELECT "t1"."strategy", "t1"."fetch_date", "t1"."cookie_bytes" FROM "_cookieschema" AS "t1" WHERE ("t1"."strategy" = ?) LIMIT ? OFFSET ?', ['basic', 1, 0])
2025-02-03 22:06:51,117 - yfinance - DEBUG - loaded persistent cookie
2025-02-03 22:06:51,117 - yfinance - DEBUG - reusing cookie
2025-02-03 22:06:51,119 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query1.finance.yahoo.com:443
2025-02-03 22:06:51,217 - urllib3.connectionpool - DEBUG - https://query1.finance.yahoo.com:443 "GET /v1/test/getcrumb HTTP/1.1" 200 11
2025-02-03 22:06:51,217 - yfinance - DEBUG - crumb = 'j1NsOs24VUb'
2025-02-03 22:06:51,217 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:06:51,217 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:06:51,219 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query2.finance.yahoo.com:443
2025-02-03 22:06:51,300 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/ETH-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:06:51,316 - yfinance - DEBUG - response code=200
2025-02-03 22:06:51,316 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:06:51,316 - yfinance - DEBUG - Exiting get()
2025-02-03 22:06:51,322 - yfinance - DEBUG - ETH-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:06:51,328 - yfinance - DEBUG - ETH-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:06:51,330 - yfinance - DEBUG - ETH-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:06:51,335 - yfinance - DEBUG - ETH-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:06:51,335 - yfinance - DEBUG - Exiting history()
2025-02-03 22:06:51,335 - yfinance - DEBUG - Exiting history()
2025-02-03 22:06:51,339 - root - ERROR - Error processing window data: name 'pytz' is not defined
2025-02-03 22:06:51,341 - yfinance - DEBUG - Entering history()
2025-02-03 22:06:51,341 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['NVDA', 1, 0])
2025-02-03 22:06:51,341 - yfinance - DEBUG - Entering history()
2025-02-03 22:06:51,341 - yfinance - DEBUG - NVDA: Yahoo GET parameters: {'period1': '2025-01-31 00:00:00-05:00', 'period2': '2025-02-03 00:00:00-05:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:06:51,341 - yfinance - DEBUG - Entering get()
2025-02-03 22:06:51,342 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:06:51,342 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/NVDA
2025-02-03 22:06:51,342 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:06:51,342 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:06:51,342 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:06:51,342 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:06:51,342 - yfinance - DEBUG - reusing cookie
2025-02-03 22:06:51,342 - yfinance - DEBUG - reusing crumb
2025-02-03 22:06:51,342 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:06:51,342 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:06:51,397 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/NVDA?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:06:51,397 - yfinance - DEBUG - response code=200
2025-02-03 22:06:51,397 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:06:51,397 - yfinance - DEBUG - Exiting get()
2025-02-03 22:06:51,398 - yfinance - DEBUG - NVDA: yfinance received OHLC data: 2025-01-31 14:30:00 -> 2025-01-31 20:55:00
2025-02-03 22:06:51,403 - yfinance - DEBUG - NVDA: OHLC after cleaning: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:06:51,405 - yfinance - DEBUG - NVDA: OHLC after combining events: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:06:51,409 - yfinance - DEBUG - NVDA: yfinance returning OHLC: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:06:51,409 - yfinance - DEBUG - Exiting history()
2025-02-03 22:06:51,409 - yfinance - DEBUG - Exiting history()
2025-02-03 22:06:51,413 - root - ERROR - Error processing window data: name 'pytz' is not defined
2025-02-03 22:06:52,523 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:06:52,525 - root - ERROR - Error processing window data: name 'pytz' is not defined
2025-02-03 22:06:52,595 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:06:52,595 - root - ERROR - Error processing window data: name 'pytz' is not defined
2025-02-03 22:06:52,596 - root - INFO - Rate limit approaching, waiting 59s
2025-02-03 22:06:53,540 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:06:53,541 - root - ERROR - Error processing window data: name 'pytz' is not defined
2025-02-03 22:06:53,541 - root - INFO - Rate limit approaching, waiting 58s

View File

@ -0,0 +1,68 @@
2025-02-03 22:07:32,069 - asyncio - DEBUG - Using selector: KqueueSelector
2025-02-03 22:07:32,142 - yfinance - DEBUG - Entering history()
2025-02-03 22:07:32,143 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_kv" ("key" VARCHAR(255) NOT NULL PRIMARY KEY, "value" VARCHAR(255)) WITHOUT ROWID', [])
2025-02-03 22:07:32,143 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['ETH-USD', 1, 0])
2025-02-03 22:07:32,143 - yfinance - DEBUG - Entering history()
2025-02-03 22:07:32,143 - yfinance - DEBUG - ETH-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:07:32,143 - yfinance - DEBUG - Entering get()
2025-02-03 22:07:32,144 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:07:32,144 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/ETH-USD
2025-02-03 22:07:32,144 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:07:32,144 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:07:32,144 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:07:32,144 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:07:32,144 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_cookieschema" ("strategy" VARCHAR(255) NOT NULL PRIMARY KEY, "fetch_date" DATETIME NOT NULL, "cookie_bytes" BLOB NOT NULL) WITHOUT ROWID', [])
2025-02-03 22:07:32,144 - peewee - DEBUG - ('SELECT "t1"."strategy", "t1"."fetch_date", "t1"."cookie_bytes" FROM "_cookieschema" AS "t1" WHERE ("t1"."strategy" = ?) LIMIT ? OFFSET ?', ['basic', 1, 0])
2025-02-03 22:07:32,145 - yfinance - DEBUG - loaded persistent cookie
2025-02-03 22:07:32,145 - yfinance - DEBUG - reusing cookie
2025-02-03 22:07:32,146 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query1.finance.yahoo.com:443
2025-02-03 22:07:32,223 - urllib3.connectionpool - DEBUG - https://query1.finance.yahoo.com:443 "GET /v1/test/getcrumb HTTP/1.1" 200 11
2025-02-03 22:07:32,223 - yfinance - DEBUG - crumb = 'j1NsOs24VUb'
2025-02-03 22:07:32,223 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:07:32,223 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:07:32,224 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query2.finance.yahoo.com:443
2025-02-03 22:07:32,293 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/ETH-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:07:32,305 - yfinance - DEBUG - response code=200
2025-02-03 22:07:32,305 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:07:32,305 - yfinance - DEBUG - Exiting get()
2025-02-03 22:07:32,311 - yfinance - DEBUG - ETH-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:07:32,318 - yfinance - DEBUG - ETH-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:07:32,321 - yfinance - DEBUG - ETH-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:07:32,325 - yfinance - DEBUG - ETH-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:07:32,325 - yfinance - DEBUG - Exiting history()
2025-02-03 22:07:32,325 - yfinance - DEBUG - Exiting history()
2025-02-03 22:07:32,330 - root - WARNING - Insufficient window size at 2025-01-31 09:50:00+00:00. Need 72, got 12
2025-02-03 22:07:32,331 - yfinance - DEBUG - Entering history()
2025-02-03 22:07:32,331 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['NVDA', 1, 0])
2025-02-03 22:07:32,331 - yfinance - DEBUG - Entering history()
2025-02-03 22:07:32,332 - yfinance - DEBUG - NVDA: Yahoo GET parameters: {'period1': '2025-01-31 00:00:00-05:00', 'period2': '2025-02-03 00:00:00-05:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:07:32,332 - yfinance - DEBUG - Entering get()
2025-02-03 22:07:32,332 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:07:32,332 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/NVDA
2025-02-03 22:07:32,332 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:07:32,332 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:07:32,332 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:07:32,332 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:07:32,332 - yfinance - DEBUG - reusing cookie
2025-02-03 22:07:32,332 - yfinance - DEBUG - reusing crumb
2025-02-03 22:07:32,332 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:07:32,332 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:07:32,369 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/NVDA?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:07:32,370 - yfinance - DEBUG - response code=200
2025-02-03 22:07:32,370 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:07:32,370 - yfinance - DEBUG - Exiting get()
2025-02-03 22:07:32,371 - yfinance - DEBUG - NVDA: yfinance received OHLC data: 2025-01-31 14:30:00 -> 2025-01-31 20:55:00
2025-02-03 22:07:32,377 - yfinance - DEBUG - NVDA: OHLC after cleaning: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:07:32,379 - yfinance - DEBUG - NVDA: OHLC after combining events: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:07:32,383 - yfinance - DEBUG - NVDA: yfinance returning OHLC: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:07:32,383 - yfinance - DEBUG - Exiting history()
2025-02-03 22:07:32,383 - yfinance - DEBUG - Exiting history()
2025-02-03 22:07:32,385 - root - WARNING - Insufficient window size at 2025-01-31 14:40:00+00:00. Need 72, got 12
2025-02-03 22:07:33,430 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:07:33,431 - root - WARNING - Insufficient window size at 2025-01-31 14:45:00+00:00. Need 72, got 13
2025-02-03 22:07:33,527 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:07:33,527 - root - WARNING - Insufficient window size at 2025-01-31 09:55:00+00:00. Need 72, got 13
2025-02-03 22:07:33,527 - root - INFO - Rate limit approaching, waiting 59s
2025-02-03 22:07:34,545 - root - ERROR - Max retries reached; returning None for predictions. Error: 'NoneType' object has no attribute 'copy'
2025-02-03 22:07:34,545 - root - WARNING - Insufficient window size at 2025-01-31 14:50:00+00:00. Need 72, got 14
2025-02-03 22:07:34,545 - root - INFO - Rate limit approaching, waiting 58s

View File

@ -0,0 +1,303 @@
2025-02-03 22:10:32,902 - asyncio - DEBUG - Using selector: KqueueSelector
2025-02-03 22:10:32,976 - yfinance - DEBUG - Entering history()
2025-02-03 22:10:32,977 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_kv" ("key" VARCHAR(255) NOT NULL PRIMARY KEY, "value" VARCHAR(255)) WITHOUT ROWID', [])
2025-02-03 22:10:32,977 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['ETH-USD', 1, 0])
2025-02-03 22:10:32,977 - yfinance - DEBUG - Entering history()
2025-02-03 22:10:32,977 - yfinance - DEBUG - ETH-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:10:32,977 - yfinance - DEBUG - Entering get()
2025-02-03 22:10:32,977 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:10:32,977 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/ETH-USD
2025-02-03 22:10:32,977 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:10:32,977 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:10:32,977 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:10:32,977 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:10:32,978 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_cookieschema" ("strategy" VARCHAR(255) NOT NULL PRIMARY KEY, "fetch_date" DATETIME NOT NULL, "cookie_bytes" BLOB NOT NULL) WITHOUT ROWID', [])
2025-02-03 22:10:32,978 - peewee - DEBUG - ('SELECT "t1"."strategy", "t1"."fetch_date", "t1"."cookie_bytes" FROM "_cookieschema" AS "t1" WHERE ("t1"."strategy" = ?) LIMIT ? OFFSET ?', ['basic', 1, 0])
2025-02-03 22:10:32,978 - yfinance - DEBUG - loaded persistent cookie
2025-02-03 22:10:32,978 - yfinance - DEBUG - reusing cookie
2025-02-03 22:10:32,980 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query1.finance.yahoo.com:443
2025-02-03 22:10:33,101 - urllib3.connectionpool - DEBUG - https://query1.finance.yahoo.com:443 "GET /v1/test/getcrumb HTTP/1.1" 200 11
2025-02-03 22:10:33,102 - yfinance - DEBUG - crumb = 'j1NsOs24VUb'
2025-02-03 22:10:33,102 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:10:33,102 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:10:33,103 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query2.finance.yahoo.com:443
2025-02-03 22:10:33,185 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/ETH-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:10:33,210 - yfinance - DEBUG - response code=200
2025-02-03 22:10:33,210 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:10:33,210 - yfinance - DEBUG - Exiting get()
2025-02-03 22:10:33,219 - yfinance - DEBUG - ETH-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:10:33,228 - yfinance - DEBUG - ETH-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:10:33,231 - yfinance - DEBUG - ETH-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:10:33,237 - yfinance - DEBUG - ETH-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:10:33,237 - yfinance - DEBUG - Exiting history()
2025-02-03 22:10:33,237 - yfinance - DEBUG - Exiting history()
2025-02-03 22:10:33,242 - root - WARNING - Insufficient window size at 2025-01-31 09:55:00+00:00. Need 72, got 12
2025-02-03 22:10:33,242 - root - WARNING - Insufficient window size at 2025-01-31 10:00:00+00:00. Need 72, got 13
2025-02-03 22:10:33,242 - root - WARNING - Insufficient window size at 2025-01-31 10:05:00+00:00. Need 72, got 14
2025-02-03 22:10:33,242 - root - WARNING - Insufficient window size at 2025-01-31 10:10:00+00:00. Need 72, got 15
2025-02-03 22:10:33,242 - root - WARNING - Insufficient window size at 2025-01-31 10:15:00+00:00. Need 72, got 16
2025-02-03 22:10:33,242 - root - WARNING - Insufficient window size at 2025-01-31 10:20:00+00:00. Need 72, got 17
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 10:25:00+00:00. Need 72, got 18
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 10:30:00+00:00. Need 72, got 19
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 10:35:00+00:00. Need 72, got 20
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 10:40:00+00:00. Need 72, got 21
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 10:45:00+00:00. Need 72, got 22
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 10:50:00+00:00. Need 72, got 23
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 10:55:00+00:00. Need 72, got 24
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:00:00+00:00. Need 72, got 25
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:05:00+00:00. Need 72, got 26
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:10:00+00:00. Need 72, got 27
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:15:00+00:00. Need 72, got 28
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:20:00+00:00. Need 72, got 29
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:25:00+00:00. Need 72, got 30
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:30:00+00:00. Need 72, got 31
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:35:00+00:00. Need 72, got 32
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:40:00+00:00. Need 72, got 33
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:45:00+00:00. Need 72, got 34
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:50:00+00:00. Need 72, got 35
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 11:55:00+00:00. Need 72, got 36
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 12:00:00+00:00. Need 72, got 37
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 12:05:00+00:00. Need 72, got 38
2025-02-03 22:10:33,243 - root - WARNING - Insufficient window size at 2025-01-31 12:10:00+00:00. Need 72, got 39
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:15:00+00:00. Need 72, got 40
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:20:00+00:00. Need 72, got 41
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:25:00+00:00. Need 72, got 42
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:30:00+00:00. Need 72, got 43
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:35:00+00:00. Need 72, got 44
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:40:00+00:00. Need 72, got 45
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:45:00+00:00. Need 72, got 46
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:50:00+00:00. Need 72, got 47
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 12:55:00+00:00. Need 72, got 48
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:00:00+00:00. Need 72, got 49
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:05:00+00:00. Need 72, got 50
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:10:00+00:00. Need 72, got 51
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:15:00+00:00. Need 72, got 52
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:20:00+00:00. Need 72, got 53
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:25:00+00:00. Need 72, got 54
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:30:00+00:00. Need 72, got 55
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:35:00+00:00. Need 72, got 56
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:40:00+00:00. Need 72, got 57
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:45:00+00:00. Need 72, got 58
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:50:00+00:00. Need 72, got 59
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 13:55:00+00:00. Need 72, got 60
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 14:00:00+00:00. Need 72, got 61
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 14:05:00+00:00. Need 72, got 62
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 14:10:00+00:00. Need 72, got 63
2025-02-03 22:10:33,244 - root - WARNING - Insufficient window size at 2025-01-31 14:15:00+00:00. Need 72, got 64
2025-02-03 22:10:33,245 - root - WARNING - Insufficient window size at 2025-01-31 14:20:00+00:00. Need 72, got 65
2025-02-03 22:10:33,245 - root - WARNING - Insufficient window size at 2025-01-31 14:25:00+00:00. Need 72, got 66
2025-02-03 22:10:33,245 - root - WARNING - Insufficient window size at 2025-01-31 14:30:00+00:00. Need 72, got 67
2025-02-03 22:10:33,245 - root - WARNING - Insufficient window size at 2025-01-31 14:35:00+00:00. Need 72, got 68
2025-02-03 22:10:33,245 - root - WARNING - Insufficient window size at 2025-01-31 14:40:00+00:00. Need 72, got 69
2025-02-03 22:10:33,245 - root - WARNING - Insufficient window size at 2025-01-31 14:45:00+00:00. Need 72, got 70
2025-02-03 22:10:33,245 - root - WARNING - Insufficient window size at 2025-01-31 14:50:00+00:00. Need 72, got 71
2025-02-03 22:10:33,259 - yfinance - DEBUG - Entering history()
2025-02-03 22:10:33,259 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['NVDA', 1, 0])
2025-02-03 22:10:33,259 - yfinance - DEBUG - Entering history()
2025-02-03 22:10:33,260 - yfinance - DEBUG - NVDA: Yahoo GET parameters: {'period1': '2025-01-31 00:00:00-05:00', 'period2': '2025-02-03 00:00:00-05:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:10:33,260 - yfinance - DEBUG - Entering get()
2025-02-03 22:10:33,260 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:10:33,260 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/NVDA
2025-02-03 22:10:33,260 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:10:33,260 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:10:33,260 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:10:33,260 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:10:33,260 - yfinance - DEBUG - reusing cookie
2025-02-03 22:10:33,260 - yfinance - DEBUG - reusing crumb
2025-02-03 22:10:33,260 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:10:33,260 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:10:33,317 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/NVDA?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:10:33,317 - yfinance - DEBUG - response code=200
2025-02-03 22:10:33,317 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:10:33,317 - yfinance - DEBUG - Exiting get()
2025-02-03 22:10:33,318 - yfinance - DEBUG - NVDA: yfinance received OHLC data: 2025-01-31 14:30:00 -> 2025-01-31 20:55:00
2025-02-03 22:10:33,322 - yfinance - DEBUG - NVDA: OHLC after cleaning: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:10:33,325 - yfinance - DEBUG - NVDA: OHLC after combining events: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:10:33,328 - yfinance - DEBUG - NVDA: yfinance returning OHLC: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:10:33,328 - yfinance - DEBUG - Exiting history()
2025-02-03 22:10:33,328 - yfinance - DEBUG - Exiting history()
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 14:50:00+00:00. Need 72, got 12
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 14:55:00+00:00. Need 72, got 13
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:00:00+00:00. Need 72, got 14
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:05:00+00:00. Need 72, got 15
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:10:00+00:00. Need 72, got 16
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:15:00+00:00. Need 72, got 17
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:20:00+00:00. Need 72, got 18
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:25:00+00:00. Need 72, got 19
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:30:00+00:00. Need 72, got 20
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:35:00+00:00. Need 72, got 21
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:40:00+00:00. Need 72, got 22
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:45:00+00:00. Need 72, got 23
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:50:00+00:00. Need 72, got 24
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 15:55:00+00:00. Need 72, got 25
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:00:00+00:00. Need 72, got 26
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:05:00+00:00. Need 72, got 27
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:10:00+00:00. Need 72, got 28
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:15:00+00:00. Need 72, got 29
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:20:00+00:00. Need 72, got 30
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:25:00+00:00. Need 72, got 31
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:30:00+00:00. Need 72, got 32
2025-02-03 22:10:33,331 - root - WARNING - Insufficient window size at 2025-01-31 16:35:00+00:00. Need 72, got 33
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 16:40:00+00:00. Need 72, got 34
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 16:45:00+00:00. Need 72, got 35
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 16:50:00+00:00. Need 72, got 36
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 16:55:00+00:00. Need 72, got 37
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:00:00+00:00. Need 72, got 38
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:05:00+00:00. Need 72, got 39
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:10:00+00:00. Need 72, got 40
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:15:00+00:00. Need 72, got 41
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:20:00+00:00. Need 72, got 42
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:25:00+00:00. Need 72, got 43
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:30:00+00:00. Need 72, got 44
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:35:00+00:00. Need 72, got 45
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:40:00+00:00. Need 72, got 46
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:45:00+00:00. Need 72, got 47
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:50:00+00:00. Need 72, got 48
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 17:55:00+00:00. Need 72, got 49
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:00:00+00:00. Need 72, got 50
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:05:00+00:00. Need 72, got 51
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:10:00+00:00. Need 72, got 52
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:15:00+00:00. Need 72, got 53
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:20:00+00:00. Need 72, got 54
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:25:00+00:00. Need 72, got 55
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:30:00+00:00. Need 72, got 56
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:35:00+00:00. Need 72, got 57
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:40:00+00:00. Need 72, got 58
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:45:00+00:00. Need 72, got 59
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:50:00+00:00. Need 72, got 60
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 18:55:00+00:00. Need 72, got 61
2025-02-03 22:10:33,332 - root - WARNING - Insufficient window size at 2025-01-31 19:00:00+00:00. Need 72, got 62
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:05:00+00:00. Need 72, got 63
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:10:00+00:00. Need 72, got 64
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:15:00+00:00. Need 72, got 65
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:20:00+00:00. Need 72, got 66
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:25:00+00:00. Need 72, got 67
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:30:00+00:00. Need 72, got 68
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:35:00+00:00. Need 72, got 69
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:40:00+00:00. Need 72, got 70
2025-02-03 22:10:33,333 - root - WARNING - Insufficient window size at 2025-01-31 19:45:00+00:00. Need 72, got 71
2025-02-03 22:10:34,456 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:10:34,514 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:10:34,522 - root - INFO - Rate limit approaching, waiting 59s
2025-02-03 22:10:35,619 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:10:35,634 - root - INFO - Rate limit approaching, waiting 58s
2025-02-03 22:11:34,623 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:11:34,660 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:10:00+00:00. Need 72, got 71
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:15:00+00:00. Need 72, got 70
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:20:00+00:00. Need 72, got 69
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:25:00+00:00. Need 72, got 68
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:30:00+00:00. Need 72, got 67
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:35:00+00:00. Need 72, got 66
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:40:00+00:00. Need 72, got 65
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:45:00+00:00. Need 72, got 64
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:50:00+00:00. Need 72, got 63
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 15:55:00+00:00. Need 72, got 62
2025-02-03 22:11:34,660 - root - WARNING - Insufficient window size at 2025-01-31 16:00:00+00:00. Need 72, got 61
2025-02-03 22:11:34,661 - root - ERROR - ETH-USD: No predictions returned for any interval.
2025-02-03 22:11:35,776 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:05:00+00:00. Need 72, got 71
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:10:00+00:00. Need 72, got 70
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:15:00+00:00. Need 72, got 69
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:20:00+00:00. Need 72, got 68
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:25:00+00:00. Need 72, got 67
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:30:00+00:00. Need 72, got 66
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:35:00+00:00. Need 72, got 65
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:40:00+00:00. Need 72, got 64
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:45:00+00:00. Need 72, got 63
2025-02-03 22:11:35,778 - root - WARNING - Insufficient window size at 2025-01-31 20:50:00+00:00. Need 72, got 62
2025-02-03 22:11:35,779 - root - WARNING - Insufficient window size at 2025-01-31 20:55:00+00:00. Need 72, got 61
2025-02-03 22:11:35,779 - root - ERROR - NVDA: No predictions returned for any interval.
2025-02-03 22:11:35,779 - root - INFO - No examples generated for ETH-USD
2025-02-03 22:11:35,779 - root - INFO - No examples generated for NVDA
2025-02-03 22:11:37,784 - yfinance - DEBUG - Entering history()
2025-02-03 22:11:37,786 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['BTC-USD', 1, 0])
2025-02-03 22:11:37,786 - yfinance - DEBUG - Entering history()
2025-02-03 22:11:37,787 - yfinance - DEBUG - BTC-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:11:37,787 - yfinance - DEBUG - Entering get()
2025-02-03 22:11:37,787 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:11:37,787 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/BTC-USD
2025-02-03 22:11:37,787 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:11:37,787 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:11:37,788 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:11:37,788 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:11:37,788 - yfinance - DEBUG - reusing cookie
2025-02-03 22:11:37,788 - yfinance - DEBUG - reusing crumb
2025-02-03 22:11:37,788 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:11:37,788 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:11:37,852 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/BTC-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:11:37,879 - yfinance - DEBUG - response code=200
2025-02-03 22:11:37,879 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:11:37,879 - yfinance - DEBUG - Exiting get()
2025-02-03 22:11:37,885 - yfinance - DEBUG - BTC-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:11:37,889 - yfinance - DEBUG - BTC-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:11:37,891 - yfinance - DEBUG - BTC-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:11:37,896 - yfinance - DEBUG - BTC-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:11:37,897 - yfinance - DEBUG - Exiting history()
2025-02-03 22:11:37,897 - yfinance - DEBUG - Exiting history()
2025-02-03 22:11:37,901 - root - WARNING - Insufficient window size at 2025-01-31 09:30:00+00:00. Need 72, got 12
2025-02-03 22:11:37,903 - root - WARNING - Insufficient window size at 2025-01-31 09:35:00+00:00. Need 72, got 13
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 09:40:00+00:00. Need 72, got 14
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 09:45:00+00:00. Need 72, got 15
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 09:50:00+00:00. Need 72, got 16
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 09:55:00+00:00. Need 72, got 17
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 10:00:00+00:00. Need 72, got 18
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 10:05:00+00:00. Need 72, got 19
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 10:10:00+00:00. Need 72, got 20
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 10:15:00+00:00. Need 72, got 21
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 10:20:00+00:00. Need 72, got 22
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 10:25:00+00:00. Need 72, got 23
2025-02-03 22:11:37,904 - root - WARNING - Insufficient window size at 2025-01-31 10:30:00+00:00. Need 72, got 24
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 10:35:00+00:00. Need 72, got 25
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 10:40:00+00:00. Need 72, got 26
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 10:45:00+00:00. Need 72, got 27
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 10:50:00+00:00. Need 72, got 28
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 10:55:00+00:00. Need 72, got 29
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:00:00+00:00. Need 72, got 30
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:05:00+00:00. Need 72, got 31
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:10:00+00:00. Need 72, got 32
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:15:00+00:00. Need 72, got 33
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:20:00+00:00. Need 72, got 34
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:25:00+00:00. Need 72, got 35
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:30:00+00:00. Need 72, got 36
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:35:00+00:00. Need 72, got 37
2025-02-03 22:11:37,905 - root - WARNING - Insufficient window size at 2025-01-31 11:40:00+00:00. Need 72, got 38
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 11:45:00+00:00. Need 72, got 39
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 11:50:00+00:00. Need 72, got 40
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 11:55:00+00:00. Need 72, got 41
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 12:00:00+00:00. Need 72, got 42
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 12:05:00+00:00. Need 72, got 43
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 12:10:00+00:00. Need 72, got 44
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 12:15:00+00:00. Need 72, got 45
2025-02-03 22:11:37,906 - root - WARNING - Insufficient window size at 2025-01-31 12:20:00+00:00. Need 72, got 46
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 12:25:00+00:00. Need 72, got 47
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 12:30:00+00:00. Need 72, got 48
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 12:35:00+00:00. Need 72, got 49
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 12:40:00+00:00. Need 72, got 50
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 12:45:00+00:00. Need 72, got 51
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 12:50:00+00:00. Need 72, got 52
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 12:55:00+00:00. Need 72, got 53
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:00:00+00:00. Need 72, got 54
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:05:00+00:00. Need 72, got 55
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:10:00+00:00. Need 72, got 56
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:15:00+00:00. Need 72, got 57
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:20:00+00:00. Need 72, got 58
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:25:00+00:00. Need 72, got 59
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:30:00+00:00. Need 72, got 60
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:35:00+00:00. Need 72, got 61
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:40:00+00:00. Need 72, got 62
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:45:00+00:00. Need 72, got 63
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:50:00+00:00. Need 72, got 64
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 13:55:00+00:00. Need 72, got 65
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 14:00:00+00:00. Need 72, got 66
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 14:05:00+00:00. Need 72, got 67
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 14:10:00+00:00. Need 72, got 68
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 14:15:00+00:00. Need 72, got 69
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 14:20:00+00:00. Need 72, got 70
2025-02-03 22:11:37,907 - root - WARNING - Insufficient window size at 2025-01-31 14:25:00+00:00. Need 72, got 71
2025-02-03 22:11:38,930 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:11:38,944 - root - INFO - Rate limit approaching, waiting 55s
2025-02-03 22:12:35,100 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:12:36,213 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:12:37,304 - root - ERROR - Max retries reached or unexpected error. Returning None. Error: Insufficient data: need 73 intervals, but got 72
2025-02-03 22:12:37,317 - root - INFO - Rate limit approaching, waiting 57s

View File

@ -0,0 +1,127 @@
2025-02-03 22:14:55,240 - asyncio - DEBUG - Using selector: KqueueSelector
2025-02-03 22:14:55,318 - yfinance - DEBUG - Entering history()
2025-02-03 22:14:55,319 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_kv" ("key" VARCHAR(255) NOT NULL PRIMARY KEY, "value" VARCHAR(255)) WITHOUT ROWID', [])
2025-02-03 22:14:55,319 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['ETH-USD', 1, 0])
2025-02-03 22:14:55,320 - yfinance - DEBUG - Entering history()
2025-02-03 22:14:55,320 - yfinance - DEBUG - ETH-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:14:55,320 - yfinance - DEBUG - Entering get()
2025-02-03 22:14:55,320 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:14:55,320 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/ETH-USD
2025-02-03 22:14:55,320 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:14:55,320 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:14:55,320 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:14:55,320 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:14:55,320 - peewee - DEBUG - ('CREATE TABLE IF NOT EXISTS "_cookieschema" ("strategy" VARCHAR(255) NOT NULL PRIMARY KEY, "fetch_date" DATETIME NOT NULL, "cookie_bytes" BLOB NOT NULL) WITHOUT ROWID', [])
2025-02-03 22:14:55,321 - peewee - DEBUG - ('SELECT "t1"."strategy", "t1"."fetch_date", "t1"."cookie_bytes" FROM "_cookieschema" AS "t1" WHERE ("t1"."strategy" = ?) LIMIT ? OFFSET ?', ['basic', 1, 0])
2025-02-03 22:14:55,321 - yfinance - DEBUG - loaded persistent cookie
2025-02-03 22:14:55,321 - yfinance - DEBUG - reusing cookie
2025-02-03 22:14:55,322 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query1.finance.yahoo.com:443
2025-02-03 22:14:55,394 - urllib3.connectionpool - DEBUG - https://query1.finance.yahoo.com:443 "GET /v1/test/getcrumb HTTP/1.1" 200 11
2025-02-03 22:14:55,394 - yfinance - DEBUG - crumb = 'j1NsOs24VUb'
2025-02-03 22:14:55,395 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:14:55,395 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:14:55,395 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): query2.finance.yahoo.com:443
2025-02-03 22:14:55,773 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/ETH-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:14:55,800 - yfinance - DEBUG - response code=200
2025-02-03 22:14:55,800 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:14:55,800 - yfinance - DEBUG - Exiting get()
2025-02-03 22:14:55,805 - yfinance - DEBUG - ETH-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:14:55,811 - yfinance - DEBUG - ETH-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:14:55,813 - yfinance - DEBUG - ETH-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:14:55,816 - yfinance - DEBUG - ETH-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:14:55,816 - yfinance - DEBUG - Exiting history()
2025-02-03 22:14:55,816 - yfinance - DEBUG - Exiting history()
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,820 - root - ERROR - ETH-USD: No predictions returned for any interval.
2025-02-03 22:14:55,821 - yfinance - DEBUG - Entering history()
2025-02-03 22:14:55,822 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['NVDA', 1, 0])
2025-02-03 22:14:55,822 - yfinance - DEBUG - Entering history()
2025-02-03 22:14:55,822 - yfinance - DEBUG - NVDA: Yahoo GET parameters: {'period1': '2025-01-31 00:00:00-05:00', 'period2': '2025-02-03 00:00:00-05:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:14:55,822 - yfinance - DEBUG - Entering get()
2025-02-03 22:14:55,822 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:14:55,822 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/NVDA
2025-02-03 22:14:55,822 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:14:55,822 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:14:55,822 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:14:55,822 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:14:55,822 - yfinance - DEBUG - reusing cookie
2025-02-03 22:14:55,822 - yfinance - DEBUG - reusing crumb
2025-02-03 22:14:55,822 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:14:55,822 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:14:55,861 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/NVDA?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:14:55,861 - yfinance - DEBUG - response code=200
2025-02-03 22:14:55,861 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:14:55,861 - yfinance - DEBUG - Exiting get()
2025-02-03 22:14:55,862 - yfinance - DEBUG - NVDA: yfinance received OHLC data: 2025-01-31 14:30:00 -> 2025-01-31 20:55:00
2025-02-03 22:14:55,865 - yfinance - DEBUG - NVDA: OHLC after cleaning: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:14:55,867 - yfinance - DEBUG - NVDA: OHLC after combining events: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:14:55,869 - yfinance - DEBUG - NVDA: yfinance returning OHLC: 2025-01-31 09:30:00-05:00 -> 2025-01-31 15:55:00-05:00
2025-02-03 22:14:55,869 - yfinance - DEBUG - Exiting history()
2025-02-03 22:14:55,869 - yfinance - DEBUG - Exiting history()
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - WARNING - Insufficient total data: need 72, got 11
2025-02-03 22:14:55,871 - root - ERROR - NVDA: No predictions returned for any interval.
2025-02-03 22:14:55,871 - root - INFO - No examples generated for ETH-USD
2025-02-03 22:14:55,871 - root - INFO - No examples generated for NVDA
2025-02-03 22:14:57,874 - yfinance - DEBUG - Entering history()
2025-02-03 22:14:57,874 - peewee - DEBUG - ('SELECT "t1"."key", "t1"."value" FROM "_kv" AS "t1" WHERE ("t1"."key" = ?) LIMIT ? OFFSET ?', ['BTC-USD', 1, 0])
2025-02-03 22:14:57,874 - yfinance - DEBUG - Entering history()
2025-02-03 22:14:57,875 - yfinance - DEBUG - BTC-USD: Yahoo GET parameters: {'period1': '2025-01-31 05:00:00+00:00', 'period2': '2025-02-03 05:00:00+00:00', 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'}
2025-02-03 22:14:57,875 - yfinance - DEBUG - Entering get()
2025-02-03 22:14:57,875 - yfinance - DEBUG - Entering _make_request()
2025-02-03 22:14:57,875 - yfinance - DEBUG - url=https://query2.finance.yahoo.com/v8/finance/chart/BTC-USD
2025-02-03 22:14:57,875 - yfinance - DEBUG - params=frozendict.frozendict({'period1': 1738299600, 'period2': 1738558800, 'interval': '5m', 'includePrePost': False, 'events': 'div,splits,capitalGains'})
2025-02-03 22:14:57,875 - yfinance - DEBUG - Entering _get_cookie_and_crumb()
2025-02-03 22:14:57,875 - yfinance - DEBUG - cookie_mode = 'basic'
2025-02-03 22:14:57,875 - yfinance - DEBUG - Entering _get_cookie_and_crumb_basic()
2025-02-03 22:14:57,875 - yfinance - DEBUG - reusing cookie
2025-02-03 22:14:57,875 - yfinance - DEBUG - reusing crumb
2025-02-03 22:14:57,875 - yfinance - DEBUG - Exiting _get_cookie_and_crumb_basic()
2025-02-03 22:14:57,875 - yfinance - DEBUG - Exiting _get_cookie_and_crumb()
2025-02-03 22:14:57,943 - urllib3.connectionpool - DEBUG - https://query2.finance.yahoo.com:443 "GET /v8/finance/chart/BTC-USD?period1=1738299600&period2=1738558800&interval=5m&includePrePost=False&events=div%2Csplits%2CcapitalGains&crumb=j1NsOs24VUb HTTP/1.1" 200 None
2025-02-03 22:14:57,965 - yfinance - DEBUG - response code=200
2025-02-03 22:14:57,965 - yfinance - DEBUG - Exiting _make_request()
2025-02-03 22:14:57,965 - yfinance - DEBUG - Exiting get()
2025-02-03 22:14:57,967 - yfinance - DEBUG - BTC-USD: yfinance received OHLC data: 2025-01-31 05:00:00 -> 2025-02-03 04:55:00
2025-02-03 22:14:57,971 - yfinance - DEBUG - BTC-USD: OHLC after cleaning: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:14:57,972 - yfinance - DEBUG - BTC-USD: OHLC after combining events: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:14:57,976 - yfinance - DEBUG - BTC-USD: yfinance returning OHLC: 2025-01-31 05:00:00+00:00 -> 2025-02-03 04:55:00+00:00
2025-02-03 22:14:57,976 - yfinance - DEBUG - Exiting history()
2025-02-03 22:14:57,976 - yfinance - DEBUG - Exiting history()
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - WARNING - Insufficient total data: need 72, got 15
2025-02-03 22:14:57,979 - root - ERROR - BTC-USD: No predictions returned for any interval.
2025-02-03 22:14:57,980 - root - INFO - No examples generated for BTC-USD
2025-02-03 22:14:59,981 - root - ERROR - No valid examples collected.

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,7 @@ from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_sc
from typing import Dict
from collections import Counter, defaultdict
class PerformanceMetrics:
def __init__(self, predictions_df: pd.DataFrame, market_data: pd.DataFrame):
self.predictions_df = predictions_df

View File

@ -8,6 +8,9 @@ import json
from tqdm import tqdm
import asyncio
from typing import List, Dict
import logging
# Optionally configure logging
# logging.basicConfig(level=logging.INFO)
class PredictionService:
def __init__(

File diff suppressed because one or more lines are too long

1
prediction_state.json Normal file
View File

@ -0,0 +1 @@
{"ETH-USD": {"last_timestamp": "2025-01-31 15:05:00+00:00"}, "NVDA": {"last_timestamp": "2025-01-31 15:00:00-05:00"}, "BTC-USD": {"last_timestamp": "2025-01-31 14:45:00+00:00"}}

1
processing_state.json Normal file
View File

@ -0,0 +1 @@
{"completed": [], "failed": ["NVDA", "ETH-USD", "BTC-USD"]}

1
window_state.json Normal file
View File

@ -0,0 +1 @@
{"ETH-USD": {"window_index": 67}, "NVDA": {"window_index": 66}, "BTC-USD": {"window_index": 63}}