python的df中,有每日的k线,怎么表达昨天的涨幅大于3%,昨天的上影线占实体线的20%以下,今天5日EMA均线大于10日EMA均线,大于
时间: 2024-03-17 21:45:37 浏览: 80
你可以使用如下代码实现上述筛选条件:
```python
# 假设你的df数据存储在变量df中
# 筛选昨天涨幅大于3%
df_yesterday = df.iloc[-2]
yesterday_increase = (df_yesterday['close'] - df_yesterday['open']) / df_yesterday['open']
if yesterday_increase > 0.03:
# 筛选昨天上影线占实体线的比例小于20%
if (df_yesterday['high'] - max(df_yesterday['open'], df_yesterday['close'])) / (df_yesterday['close'] - df_yesterday['open']) < 0.2:
# 筛选今天5日EMA均线大于10日EMA均线
df_today = df.iloc[-1]
if df_today['ema5'] > df_today['ema10']:
print("符合条件")
else:
print("今天5日EMA均线小于等于10日EMA均线")
else:
print("昨天上影线占实体线的比例大于等于20%")
else:
print("昨天涨幅小于等于3%")
```
其中,`df.iloc[-2]` 表示获取倒数第二行数据(即昨天的数据),`df.iloc[-1]` 表示获取最后一行数据(即今天的数据)。`df['ema5']` 和 `df['ema10']` 分别表示5日EMA均线和10日EMA均线。如果符合筛选条件,则会输出"符合条件";否则会输出对应的错误信息。
阅读全文