Ejemplo n.º 1
0
def close_cross_above_ma20(df, market='usa'):

    df = dr5.get_a_across_b(df, period_of_days=1, cross_above=("close", "ma20"), cross_type="binary-cmp",
                            period_type='day')
    df = dr5.get_a_across_b(df, period_of_days=1, cross_above=("ma20", "low"), cross_type="binary-cmp",
                            period_type='day')
    return df
Ejemplo n.º 2
0
def close_cross_above_ma20(df, market='usa'):
    myapi.market = market
    df = dr5.get_a_across_b(df, period_of_days=1, cross_above=("close", "ma20"), cross_type="binary-cmp",
                            period_type='day')
    lib2.head_offset = 1
    df = dr5.get_a_across_b(df, period_of_days=1, cross_above=("ma20", "close"), cross_type="binary-cmp",
                            period_type='day')
    return df
Ejemplo n.º 3
0
def ma5_cross_above_ma10(df, market='usa'):
    myapi.market = market
    df = dr5.get_a_across_b(df, period_of_days=1, cross_above=("ma5", "ma10"), cross_type="binary-cmp",
                            period_type='day')
    lib2.head_offset = 1
    df = dr5.get_a_across_b(df, period_of_days=1, cross_above=("ma10", "ma5"), cross_type="binary-cmp",
                            period_type='day')
    df.to_csv("{}.csv".format(inspect.stack()[0][3]))
    return df
Ejemplo n.º 4
0
def first_cross_above_upper(df, market='usa'):
    myapi.market = market
    df = dr5.get_a_across_b(df, period_of_days=1, cross_above=("close", "upper"), cross_type="binary-cmp",
                            period_type='day')
    lib2.head_offset = 1
    df1 = dr5.get_a_across_b(df, period_of_days=5, cross_above=("upper", "close"), cross_type="binary-cmp",
                             period_type='day')
    df.to_csv("{}.csv".format(inspect.stack()[0][3]))
    return df
Ejemplo n.º 5
0
def small_up_and_drop_with_low_volume():
    df1 = None
    for i in range(1, 4):
        lib2.head_offset = lib2.head_offset + 1
        df1 = dr5.get_price_up_with_percentage(df1, period_of_days=1, p_change=(0.01, 4), period_type='day')

    lib2.head_offset = lib2.head_offset - 3
    df1 = dr5.get_price_up_with_percentage(df1, period_of_days=1, p_change=(-4, 0), period_type='day')
    df1 = dr5.get_minimum_price_sum_in_n(df1, price_up_sum=3, period_of_days=4)
    df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_type="volume-drop")
    df1 = dr5.get_a_across_b(df1, period_of_days=4, cross_type="close-ma20", period_type='day')
    df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_type="abs-pchange-less", period_type='day')
    return df1
Ejemplo n.º 6
0
def strong_bounce_from_ma10(i):
    df1 = None
    lib2.head_offset = i
    df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above=("ma10", "low"), cross_type="binary-cmp", period_type='day')
    df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above=("close", "ma5"), cross_type="binary-cmp", period_type='day')

    for j in range(i, 4):
        lib2.head_offset = j + 1
        df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above=("close", "ma5"), cross_type="binary-cmp", period_type='day')

    df1 = ma5_gt_ma10_ma20(5, df1)

    df1.to_csv("strong_bounce_ma10" + str(i) + ".csv")
Ejemplo n.º 7
0
Archivo: boll.py Proyecto: zqweng/stock
def counting_break_upper_band_after_n(offset=0, num = 8, type='day',  df1=None):
    lib2.head_offset = offset
    df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above=("close", "upper", 0.007), cross_type="binary-cmp",
                             period_type=type, rank=True)

    for i in range(1, num):
        lib2.head_offset = i + offset
        df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above=("upper", "close"), cross_type="binary-cmp",
                                 period_type=type)

    str_time = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
    df1.to_csv("counting_close_above_upper_" + type + '-' + str_time + '_offset_' + str(offset) + '_days_' + str(num) + ".csv")
    return df1
Ejemplo n.º 8
0
Archivo: boll.py Proyecto: zqweng/stock
def counting_slow_semi_break_upper_band_after_n(offset=0, n = 3, k = 10, type='day'):
    df1 = None
    for i in range(n):
        lib2.head_offset = i
        df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above=("upper", "high"), cross_type="binary-cmp-close",
                                 period_type=type, rank=True)
        df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above="upper", cross_type="unary-cmp-self",
                                 period_type=type, rank=True)
        df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above="high", cross_type="unary-cmp-self",
                                 period_type=type, rank=True)

    df1 = dr5.get_a_across_b(df1, period_of_days=5, cross_above=("close", "ma5"), cross_type="binary-cmp",
                              period_type='day')
Ejemplo n.º 9
0
def counting_close_above_ma5(num = 9):
    df1 = None
    for i in range(num):
        lib2.head_offset = i
        df1 = dr5.get_a_across_b(df1, period_of_days=1, cross_above=("close", "ma5"), cross_type="binary-cmp",
                                 period_type='day')
    df1.to_csv("counting_close_above_ma5" + str(num) + ".csv")
Ejemplo n.º 10
0
Archivo: boll.py Proyecto: zqweng/stock
def counting_slow_break_upper_band(offset=0, above=2, touch=2, below=8, type='60'):
    df1 = None
    lib2.head_offset = above + 2
    df1 = dr5.get_a_across_b(df1, period_of_days=below, cross_above=("upper", "high"), cross_type="binary-cmp",
                                 period_type='60')

    lib2.head_offset = above
    df1 = dr5.get_a_across_b(df1, period_of_days=touch, cross_above=("high", "upper"), cross_type="binary-cmp",
                             period_type='60')
    df1 = dr5.get_a_across_b(df1, period_of_days=touch, cross_above=("upper", "close"), cross_type="binary-cmp",
                             period_type='60')

    lib2.head_offset = 0
    df1 = dr5.get_a_across_b(df1, period_of_days=above, cross_above=("close", "upper"), cross_type="binary-cmp",
                                 period_type='60')
    str_time = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
    df1.to_csv("counting_slow_break_upper_band" + type + '_offset_' + str(offset) + '-' + str_time + ".csv")
    return df1
Ejemplo n.º 11
0
def jump_open_week():
    ## p_change > 10 and above m20, a good chance for next week
    ## drop down after peek, it touch the bottom in the early morning in the following days when it can be easily beat down.
    ## when you see the big buy, it is time to go in
    lib2.head_offset = 0
    df1 = dr5.get_a_across_b(period_of_days=1,
                             cross_type="jump-open",
                             period_type="week")
    str_time = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
    df1.to_csv('jump_open_week' + str_time + '.csv')
Ejemplo n.º 12
0
def test(offset=0):
    df1 = counting_slow_break_upper_band(offset=offset, touch=0)
    lib2.head_offset = 4 + offset
    df2 = dr5.get_a_across_b(df1,
                             period_of_days=8,
                             cross_above=("ma20", "greater"),
                             cross_type="unary-cmp-self",
                             period_type='60')
    str_time = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
    df2.to_csv("second_breakthrough_60_" + 'offset_' + str(offset) + '_' +
               str_time + ".csv")
Ejemplo n.º 13
0
Archivo: boll.py Proyecto: zqweng/stock
def counting_ma20_go_up():
    df = dr5.get_a_across_b(period_of_days=120, cross_above="ma20", cross_type="unary-current-trend",
                             period_type='day')
    str_time = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

    #df = myapi.read_csv("case/case-boll/current_trend.csv")
    df_pos = df[df['p1'] > 3]
    df_pos = df_pos.sort_values("p1", ascending=False)
    str_time = datetime.datetime.now().strftime("%Y-n%m-%d-%H-%M-%S")
    df_pos.to_csv("current_trend_pos_" + str_time + '.csv')
    df_neg = df[df['p1'] < -3]
    df_neg = df_neg.sort_values("p1", ascending=True)
    df_neg.to_csv("current_trend_neg_" + str_time + '.csv')
    df_tran = df[(df['p1'] <= 3) & (df['p1'] >= -3)]
    df_tran = df_tran.sort_values("p1", ascending=False)
    df_tran.to_csv("current_trend_tran_" + str_time + '.csv')
    df.to_csv("current_trend" + str_time + ".csv")
    return df1
Ejemplo n.º 14
0
def day_break_high():
    df1 = dr5.get_maximum_period_break_high(period_of_days=4, min_break_num=3)
    df1 = dr5.get_a_across_b(df1, period_of_days=2, cross_type="ma5-ma10", period_type='day')
    df1 = dr5.get_a_across_b(df1, period_of_days=2, cross_type="close-ma20", period_type='day')
    # df1 = dr5.get_price_up_with_percentage(df1, period_of_days=3, p_change=(4, 10), period_type='day')
    return df1
Ejemplo n.º 15
0
Archivo: boll.py Proyecto: zqweng/stock
def counting_above_ma5(df1=None):
    df1 = dr5.get_a_across_b(df1, period_of_days=4, cross_above=("close", "ma5"), cross_type="binary-cmp",
                         period_type='day')
    str_time = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
    df1.to_csv("counting_above_ma5_" + str_time + ".csv")
    return df1
Ejemplo n.º 16
0
def ma5_gt_ma10_ma20(n, df = None):
    for i in range(n):
        lib2.head_offset = i
        df = dr5.get_a_across_b(df, period_of_days=1, cross_type="ma5-gt-ma10-gt-m20", period_type='day')
    return df
Ejemplo n.º 17
0
def counting_above_ma5_time(num_of_days = 5, df1 = None):
    df1 = dr5.get_a_across_b(df1, period_of_days=num_of_days, cross_above=("close", "ma5"), cross_type="binary-cmp",
                             period_type='day')
Ejemplo n.º 18
0
def create_ma20_up_list(market='usa', stock_list="us_stock_volume.csv"):
    myapi.market = market
    df = dr5.get_a_across_b(period_of_days=100, cross_above=("up", "ma20"), cross_type="unary-current-trend",
                            period_type='day', stock_list=stock_list)
    df = df.sort_values("p1", ascending=False)
    df.to_csv("{}-ma20-up-list.csv".format(market))
Ejemplo n.º 19
0
# uh1.update_day()
# dr5.get_w_shape()
# hh.get_history_high_v2()
# hh.get_one_year_high_v2()
# hh.get_half_year_high_v2()
# hh.get_history_high_volume()
# hh.get_one_year_high_volume()
# dr5.get_current_price_up_periods()df
# dr5.get_current_no_touch_ma5_periods()
# hh.get_first_history_high_volume_in_10_days()
# hh.get_first_one_year_high_volume_in_10_days()
# df = dr5.get_price_sum_in_n(price_up_sum=0, stock_list="mystocklist-detail.csv")

# df = dr5.get_price_sum_in_n(df1, is_price_up=False, price_up_sum=-15)
# print(df1)
# df = myapi.read_csv("up-rank-all-stock.csv")
df1 = dr5.get_minimum_price_sum_in_n(price_up_sum=30, period_of_days=20, period_type='week')
df1 = dr5.get_minimum_price_sum_in_n(df1, is_price_up=False, price_up_sum=-10, period_of_days=10, period_type='week')
#df1 = myapi.read_csv("up-20-down-10-in-20days.csv")
df1 = dr5.get_a_across_b(df1, cross_above=False, period_of_days=4, period_type='week')
df1 = dr5.get_price_above(df1, type="close above ma20", period_of_days=1, period_type='week')
#df1 = dr5.get_price_up_with_percentage(df1, period_of_days=4)
df1 = dr5.get_price_above(df1, type="low below ma20", period_of_days=5, period_type='week')
print(df1)
# df = dr5.get_price_sum_in_n(price_up_sum=15, period_of_days=15)
# df = myapi.read_csv("price_sum1.csv")
# df = dr5.get_price_continuous_down_in_n(df, num_of_days_down=4, price_down_sum=-7)
# dr5.get_price_continuous_down_in_n(num_of_days_down=4, price_down_sum=-5, period_of_days=6)
# dr5.get_price_continuous_down_in_n(num_of_days_down=5, price_down_sum=-10, period_of_days=10)
print('finish')
Ejemplo n.º 20
0
def counting_high(num_of_days = 30, df1 = None):
    df1 = dr5.get_a_across_b(df1, period_of_days=num_of_days, cross_above=["close", "volume"], cross_type="unary-cmp",
                             period_type='day')

    df1.to_csv("counting_high" + str(num_of_days) + ".csv")
Ejemplo n.º 21
0
def jump_open(type):
    df1 = dr5.get_a_across_b(period_of_days=1, cross_type="jump-open", period_type=type)
    return df1