File size: 460 Bytes
50650e5
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
# -*- coding: utf-8 -*-
import pandas as pd
import numpy as np

def sma_signal(df: pd.DataFrame, fast: int = 10, slow: int = 20):
    df = df.copy()
    df['sma_fast'] = df['close'].rolling(fast).mean()
    df['sma_slow'] = df['close'].rolling(slow).mean()
    df['signal'] = 0
    df.loc[df['sma_fast'] > df['sma_slow'], 'signal'] = 1
    df.loc[df['sma_fast'] < df['sma_slow'], 'signal'] = -1
    return df[['close','sma_fast','sma_slow','signal']].dropna()