美文网首页
有效的穿越事件

有效的穿越事件

作者: Leoguo小哥 | 来源:发表于2024-09-01 10:27 被阅读0次

import time

import requests
import json
import numpy as np
import pandas as pd
from datetime import datetime

def get_klines(symbol, interval, limit=100):
    url = "https://fapi.binance.com/fapi/v1/klines"
    params = {'symbol': symbol, 'interval': interval, 'limit': limit}
    print(url)
    print(json.dumps(params, indent=4))
    response = requests.get(url, params=params)
    return response.json()

def calculate_ema(prices, period):
    return pd.Series(prices).ewm(span=period, adjust=False).mean().tolist()

def calculate_macd(prices, fast_period, slow_period, signal_period):
    ema_fast = calculate_ema(prices, fast_period)
    ema_slow = calculate_ema(prices, slow_period)
    macd = np.subtract(ema_fast[-len(ema_slow):], ema_slow)
    signal = calculate_ema(macd, signal_period)
    return macd, signal

def find_crossovers(macd, signal, times, prices, ema5, ema30):
    crosses = []
    valid_crosses = []  # 用于记录有效的穿透事件
    min_length = min(len(macd), len(signal))
    last_valid_time = datetime.min  # 初始化上一个有效事件的时间
    for i in range(1, min_length):
        closing_price = prices[i]
        ema5_price = ema5[i]
        ema30_price = ema30[i]
        current_time = times[i]
        cross_time = datetime.utcfromtimestamp(current_time / 1000 + 8*3600)
        time_diff = (cross_time - last_valid_time).total_seconds() / 60  # 计算时间差,单位转换为分钟
        confidence_msg = ""
        if macd[i-1] < signal[i-1] and macd[i] > signal[i] and closing_price > ema5_price:
            if time_diff >= 30 or last_valid_time == datetime.min:  # 判断时间间隔是否符合要求或者是第一个事件
                if closing_price > ema5_price and closing_price > ema30_price:
                    confidence_msg = "放心做吧"
                crosses.append((i, 'Gold', cross_time.strftime('%Y-%m-%d %H:%M:%S'), '有效', confidence_msg))
                last_valid_time = cross_time
            else:
                crosses.append((i, 'Gold', cross_time.strftime('%Y-%m-%d %H:%M:%S'), '无效', ""))
        elif macd[i-1] > signal[i-1] and macd[i] < signal[i] and closing_price < ema5_price:
            if time_diff >= 30 or last_valid_time == datetime.min:
                if closing_price < ema5_price and closing_price < ema30_price:
                    confidence_msg = "放心做吧"
                crosses.append((i, 'Dead', cross_time.strftime('%Y-%m-%d %H:%M:%S'), '有效', confidence_msg))
                last_valid_time = cross_time
            else:
                crosses.append((i, 'Dead', cross_time.strftime('%Y-%m-%d %H:%M:%S'), '无效', ""))
    return crosses

def main():
    symbol = 'BTCUSDT'
    interval = '5m'
    limit = 500

    klines = get_klines(symbol, interval, limit)
    prices = [float(kline[4]) for kline in klines]
    times = [int(kline[0]) for kline in klines]

    ema5 = calculate_ema(prices, 5)
    ema30 = calculate_ema(prices, 30)

    macd, signal = calculate_macd(prices, 6, 7, 4)
    crossovers = find_crossovers(macd, signal, times, prices, ema5, ema30)

    for index, crossover_type, cross_time, status, confidence_msg in crossovers:
        print(f"{crossover_type} Cross at {cross_time}: {status}. {confidence_msg}")

if __name__ == '__main__':
    while True:
        main()
        time.sleep(30)

相关文章

  • 困兽犹斗 鲜血觉醒

    穿越时空的囚笼 ​ 事件--观察/情绪--观念影响---------时间线-----------事件--观察/情绪...

  • 历史上的真实穿越事件,谢尔盖穿越事件之谜

    2006年4月23日,一名20多岁的年轻人,游荡在乌克兰首都基辅,他穿着一件老旧的衣服,脖子上还挂着一副老式相机,...

  • 五种爱的能力—如何管理好情绪(8)

    用于现实中落地的有效方法 1穿越情绪按钮 2穿越情绪按钮需要时间+刻意练习 一旦穿越之后,人的性格变了,命运也会改...

  • 今日亲历的“穿越”事件

    今天一早到公司准备11点多会场 茶歇水果桌牌投影 突然发现名单有变动 有一位同事没有桌牌 这时候已经来不及找广告公...

  • js常用事件集合

    a.窗口事件,只在body和frameset元素中才有效 b.表单元素事件,在表单元素中才有效 c.键盘事件,在b...

  • 读《穿越事件薄》

    灵犀阁主著。 怎么......这么长...... 前十分之一还是不错的,文笔风趣条例清楚。 案件较为缜密,女主也聪...

  • 《有效教学十讲》读书笔记

    教学的有效性是指什么? 先讲一个穿越玉米地的故事,穿越玉米地,比的是谁穿的快,谁掰的玉米多,在穿越过程当中,谁是最...

  • 如何混社会(读后十二)

    从最坏的角度去衡量 无论做什么事件,要先把最坏的结果想到。这个能有效降低对事件成功狂热的期望值,能有效降低失...

  • 工作日的读书时间---一周读书笔记(第三周)

    1.《百度贴吧X事件》 你相信穿越吗?这是一个叫做穿越吧的故事,吧主据说能够穿越到从前,你有什么心愿可以让他带个话...

  • 格局与意外

    今天我在看一些穿越小说。写的是一些穿越者穿越成某些历史中的人物,参与到重大的转折性事件,改变了历史。 我从前也是很...

网友评论

      本文标题:有效的穿越事件

      本文链接:https://www.haomeiwen.com/subject/ahrcljtx.html