79712931

Date: 2025-07-24 07:33:56
Score: 1
Natty:
Report link

import pandas as pd

import yfinance as yf

# Load historical data

data = yf.download("AAPL", start="2022-01-01", end="2023-01-01")

data['SMA_9'] = data['Close'].rolling(window=9).mean()

data['SMA_21'] = data['Close'].rolling(window=21).mean()

# Create crossover/crossunder signals

data['Buy'] = (data['SMA_9'] > data['SMA_21']) & (data['SMA_9'].shift(1) <= data['SMA_21'].shift(1))

data['Sell'] = (data['SMA_9'] < data['SMA_21']) & (data['SMA_9'].shift(1) >= data['SMA_21'].shift(1))

# Show signals

print(data[['Close', 'SMA_9', 'SMA_21', 'Buy', 'Sell']].dropna().tail(10))

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Ashritha Pudari