# coding: utf-8

from enum import Enum

class Mark(Enum):
    D = "底分型"
    G = "顶分型"

class Direction(Enum):
    Up = "向上"
    Down = "向下"

class Freq(Enum):
    F1 = "1分钟"
    F5 = "5分钟"
    F15 = "15分钟"
    F30 = "30分钟"
    F60 = "60分钟"
    D = "日线"
    W = "周线"
    M = "月线"

class FdThree(Enum):
    """三段形态分类"""
    # 多头形态
    L1 = "向下不重合"
    L2 = "向下奔走型中枢"
    L3 = "向下三角收敛中枢"
    L4 = "向下三角扩张中枢"
    L5 = "向下盘背中枢"
    L6 = "向下无背中枢"

    # 空头形态
    S1 = "向上不重合"
    S2 = "向上奔走型中枢"
    S3 = "向上三角收敛中枢"
    S4 = "向上三角扩张中枢"
    S5 = "向上盘背中枢"
    S6 = "向上无背中枢"

    Other = "其他"


class FdFive(Enum):
    """五段形态分类"""
    L1A1 = "向下三角收敛中枢"
    L1B1 = "向下三角扩张中枢"

    L2A1 = "aAb式底背驰A"
    L2B1 = "aAb式底背驰B"
    L2C1 = "aAb式底背驰C"

    L3A1 = "类趋势底背驰"

    L4A1 = "三买A1"
    L4A2 = "三买A2"
    L4B1 = "三买B1"
    L4B2 = "三买B2"
    L4C1 = "三买C1"
    L4C2 = "三买C2"
    L4D1 = "三买D1"
    L4D2 = "三买D2"

    L5A1 = "cA底部A"
    L5B1 = "cA底部B"

    S1A1 = "向上三角收敛中枢"
    S1B1 = "向上三角扩张中枢"

    S2A1 = "aAb式顶背驰A"
    S2B1 = "aAb式顶背驰B"
    S2C1 = "aAb式顶背驰C"

    S3A1 = "类趋势顶背驰"

    S4A1 = "三卖A1"
    S4A2 = "三卖A2"
    S4B1 = "三卖B1"
    S4B2 = "三卖B2"
    S4C1 = "三卖C1"
    S4C2 = "三卖C2"
    S4D1 = "三卖D1"
    S4D2 = "三卖D2"

    S5A1 = "cA顶部A"
    S5B1 = "cA顶部B"

    Other = "其他"

class FdSeven(Enum):
    """七段形态分类"""
    L1A1 = "aAb式底背驰"
    L2A1 = "aAbcd式底背驰"
    L3A1 = "BaA式右侧底A"
    L3B1 = "BaA式右侧底B"
    L4A1 = "类趋势底背驰"

    S1A1 = "aAb式顶背驰"
    S2A1 = "aAbcd式顶背驰"
    S3A1 = "BaA式右侧顶A"
    S3B1 = "BaA式右侧顶B"
    S4A1 = "类趋势顶背驰"

    Other = "其他"

class FdNine(Enum):
    """九段形态分类"""
    L1A1 = "类趋势底背驰"

    L2A1 = "含有一个上下上方向中枢A"
    L2B1 = "含有一个上下上方向中枢B"
    L2C1 = "含有一个上下上方向中枢C"

    L3A1 = "标准aAbBc向下趋势"

    L4A1 = "上中枢七段下跌"
    L4B1 = "下中枢七段下跌"

    # =================================

    S1A1 = "类趋势顶背驰"

    S2A1 = "含有一个下上下方向中枢A"
    S2B1 = "含有一个下上下方向中枢B"
    S2C1 = "含有一个下上下方向中枢C"

    S3A1 = "标准aAbBc向上趋势"

    S4A1 = "上中枢七段上涨"
    S4B1 = "下中枢七段上涨"

    Other = "其他"

class Factors(Enum):
    DLA1 = "日线右侧多头1"   # 日线第N笔向下结束，且30分钟第N笔的七笔形态为BaA式右侧底B
    DLA2 = "日线右侧多头2"   # 日线向下笔以超强底分结束，且5分钟第N笔的七笔形态为BaA式右侧底A
    DLA3 = "日线右侧多头3"   # 日线第N笔的五笔形态为底背驰，且30分钟第N笔的七笔形态为BaA式右侧底B
    DLA4 = "日线右侧多头4"   # 日线第N笔的七笔形态为底背驰，且30分钟第N笔的七笔形态为BaA式右侧底B

    DLB1 = "日线左侧多头1"   # 日线第N笔向下延伸，且30分钟第N笔的七笔形态为aAbcd式底背驰或类趋势底背驰

    F30LA1 = "30分钟右侧多头1"   # 5分钟第N笔的五笔形态为三买且1分钟第N笔的七笔形态为BaA式右侧底B

    F5LA1 = "5分钟右侧多头1"   # 5分钟第N笔向下结束，且1分钟第N笔的七笔形态为BaA式右侧底B
    F5LA2 = "5分钟右侧多头2"   # 5分钟第N笔向下结束，且1分钟第N笔的七笔形态为BaA式右侧底B
    F5LA3 = "5分钟右侧多头3"   # 5分钟第N笔的七笔形态为底背驰，且1分钟第N笔的七笔形态为BaA式右侧底B

    F5SA1 = "5分钟右侧空头1"   # 5分钟第N笔向上结束，且1分钟第N笔的七笔形态为BaA式右侧顶B
    F5SA2 = "5分钟右侧空头2"   # 5分钟第N笔的五笔形态为顶背驰，且1分钟第N笔的七笔形态为BaA式右侧顶B
    F5SA3 = "5分钟右侧空头3"   # 5分钟第N笔的七笔形态为顶背驰，且1分钟第N笔的七笔形态为BaA式右侧顶B

    # =================
    DSA1 = "日线右侧空头1"

    DSB1 = "日线左侧空头1"    # 日线第N笔方向向上且没有发生向上破坏，且30分钟第N笔的五笔形态为顶背驰
    DSB2 = "日线左侧空头2"    # 日线第N笔方向向上且没有发生向上破坏，且30分钟第N笔的七笔形态为顶背驰

    Other = "其他"

