跑策略不要跑平台币... 实盘

其他币都是一家交易所对标其他几个交易所所形成的价格
平台币不同... 他一家说的算

这就是下场:
图片alt


苏慕白 发布于  2022-1-13 20:07 

1-12日 圣杯策略实盘结果 实盘

第一个圣杯跑了44天了,最高盈利62%,目前又来到了最大回撤点:
图片alt


第二个圣杯策略,目前实盘了七天:
整体框架经过了无数次修改没什么大问题
现在一直在解决订单完全成交导致滑点的问题

图片alt
图片alt


这几天折腾第二个圣杯策略去了,没更新博客,回测万2%手续费可以达到日化15%
先是框架搭建、修bug、修完bug来了个大额订单无法完全成交,头疼。


苏慕白 发布于  2022-1-12 23:52 

如果0手续费... 笔记

在高频领域,如果你有0手续费,那么随意一个指标,有50%胜率,就可以致富
图片alt

哦不对,还有一个前提,你能保证交易没有滑点,也就是你的开仓平仓都能保证是指定价格交易

否则,结果就会变成这样:
图片alt


苏慕白 发布于  2022-1-12 23:46 

12-29日 实盘策略 实盘

1. 前言

最近5天,一直在忙着让第二个圣杯策略实盘
前前后后改了应该有几十个bug了
因为这个策略需要高频超短线做市,之前的框架不能满足
框架太复杂,又熬了不少夜肝了不少代码
又把我的作息和生活节奏打乱了

图片alt
Ps:安利一下这个免费的思维导图《GitMind》软件



2. 实盘收益


前一期的实盘策略目前保留了Bounce和RsiMa
Fib Vwap虽然赚了30%个点,但是我还是把他剔除了,因为无法用回测数据支撑,跑着不放心

RsiMa属于趋势策略,Bounce为震荡策略,实盘中我与Bounce结合相跑
距离前一期一个月了,实盘也跑了一个月
期间最大回撤达到了20%多,虽然属于设计之内,但亏钱还是挺难受的,好在后面跑回去了

这个月整体盈利50%左右
图片alt
图片alt
图片alt



3.实盘策略


1. Bounce 反弹 [圣杯]
该策略为震荡策略,
顺大势逆小势,大势为多,那么每当在底部就开多,到高处平多。做空反之
亏损的原因为大势逆转

12-19日 BTCUSDT 更换为BounceV2版本,回撤从-26.57%降低到-23.51%%

地址:https://sumubai.cc/post/49
开跑:11-29 18:22:36



2. Rsi Ma

Rsi追踪趋势,Rsi值进行Ma平滑处理防止震荡重复入场

地址: https://sumubai.cc/post/60
开跑:11-29 18:22:36



3. Sb [圣杯2]
圣杯的首字母sb 23333

待跑



4. 往期实盘


  1. 11-14日 实盘策略 https://sumubai.cc/post/28
  2. 11-29日 实盘策略 https://sumubai.cc/post/52

苏慕白 发布于  2021-12-27 22:24 

12-24 随笔 笔记

多空本就不是一家
策略参数多空一视同仁那么就是傻逼


看着后台越来越多人访问我博客,内心的自私暴露无遗
心里想着要是他们靠我发的文章赚钱了咋办,嫉妒
人性真复杂呐


苏慕白 发布于  2021-12-24 08:30 

第二个圣杯策略 记录一下 策略

1. 策略原理

原理和Bounce反弹策略很像,区别在于一个逆势 一个顺势
暂时取名叫Sb策略,哈哈

有个坏处是它属于高频超短线策略,需要Maker手续费
Bounce反弹策略就不一样了,手续费再高也能盈利

半年了,每日每夜的研究,走过不少弯路
还好前一个月走回来了策略这条路
金融,Good Bye

图片alt



2. 回测结果


万2手续费Eth近四个月:
图片alt


万1手续费Eth近四个月:
图片alt


万0手续费Eth近四个月:
图片alt



Eth Eth_Sell Dot Dot_Sell
两个交易对多空双开回测:


万2手续费近2个月:
图片alt


万0手续费近2个月:
图片alt


万2手续费近1年:
图片alt


万0手续费近1年:
图片alt


统计:
图片alt



3. 总结


以上仅仅是两个交易对的效果,如果10个交易对呢,2333
然后加上配合市商账号相信日化可以达到5%

一如既往最大回撤控制在30%


苏慕白 发布于  2021-12-23 18:06 

Dca策略 类马丁 策略

1.策略原理

Dca:Dollar cost averaging 美元平均成本

使用均线确定趋势
均线金叉后 买入初始 N% 量
然后确定十条网格线 (网格之间间距越来越大)
每个网格线买入点的量倍投

止盈:持仓成本固定 1.5%
止损:第十条网格价格线的 N%

于普通马丁和网格不同,带有止损不会被套和爆仓

图片alt


网格线和加仓量计算代码:

seting =  {
    'base_size': 5,                 #初始下单量 %
    'safety_size': 2,                #马丁初始下单 %

    'max_trades': 9,                 #最大交易数
    'wangge_price': 0.4 * 0.01,      #网格间距
    'wangge_price_scale': 1.19,      #网格乘数
    'wangge_volume_scale': 1.8,      #马丁乘数
}

class DcaClass():
    def __init__(self, seting):
        self.close = 0  #初始开仓价格
        self.seting = seting
        self.i = 1

    #参数i为第几条网格线
    def step(self, i):
        pd = self.seting['wangge_price']
        ss = self.seting['wangge_price_scale']

        if i == 1:
            return pd
        if i == 2:
            return pd + pd * ss
        if i == 3:
            return pd + (pd + pd * ss) * ss
        if i == 4:
            return pd + (pd + (pd + pd * ss) * ss) * ss
        if i == 5:
            return pd + (pd + (pd + (pd + pd * ss) * ss) * ss) * ss
        if i == 6:
            return pd + (pd + (pd + (pd + (pd + pd * ss) * ss) * ss) * ss) * ss
        if i == 7:
            return pd + (pd + (pd + (pd + (pd + (pd + pd * ss) * ss) * ss) * ss) * ss) * ss
        if i == 8:
            return pd + (pd + (pd + (pd + (pd + (pd + (pd + pd * ss) * ss) * ss) * ss) * ss) * ss) * ss
        if i == 9:
            return pd + (pd + (pd + (pd + (pd + (pd + (pd + (pd + pd * ss) * ss) * ss) * ss) * ss) * ss) * ss) * ss
        if i == 10:
            return pd + (pd + (pd + (pd + (pd + (pd + (pd + (pd + (pd + pd * ss) * ss) * ss) * ss) * ss) * ss) * ss) * ss) * ss
        return pd

    """网格价格计算"""
    def long_line(self, i, side):
        return self.close - self.close * self.step(i) if side == 'BUY' else self.close + self.close * self.step(i)

    """倍投数量计算"""
    def safety_order_size(self, yuer, i, side):
        ok = yuer * self.seting['safety_size'] / 100 * math.pow(self.seting['wangge_volume_scale'], i-1) #次方根
        return ok if side == 'BUY' else -ok

总结:Ma交叉后使用类似马丁的方法加仓,提高胜率


2.回测结果

图片alt

标签: 马丁 网格

苏慕白 发布于  2021-12-22 21:12 

Python实现TradingView中的PivotHigh和PivotLow 指标

直接上代码:

"""枢轴点 最高价"""
def PivotHigh(df, left, right=0):
    right = right if right else left
    df['pivot'] = 0.0
    for i in range(len(df)):
        if i >= left+right:
            rolling = df['High'][i-right-left:i+1].values
            m = max(rolling)
            #print(GetTime(df['Time'][i], "%m-%d %H:%M"), df['High'][i-right], m, rolling)
            if df['High'][i-right] == m:
                df['pivot'].values[i] = m
    return df['pivot']

"""枢轴点 最低价"""
def PivotLow(df, left, right=0):
    right = right if right else left
    df['rollingLow'] = df['Low'].rolling(left+right).min()
    df['pivot'] = 0.0
    for i in range(len(df)):
        if i >= left+right:
            rolling = df['Low'][i-right-left:i+1].values
            m = min(rolling)
            if df['Low'][i-right] == m:
                df['pivot'].values[i] = m
    return df['pivot']

使用:

import pandas as pd
df = pd.DataFrame(r) #r为K线数据

df['PivotHigh'] = PivotHigh(df.copy(), 10, 10)
df['PivotLow'] = PivotLow(df.copy(), 10, 10)
标签: tradingview

苏慕白 发布于  2021-12-20 19:45 

BOLL布林带定向策略 策略

1. 策略原理

当收盘价上穿下轨,做多
当收盘价下穿上轨,做空
图片alt

代码:

seting = {'name': 'BBv3', 'symbol': 'BTCUSDT', 'kTime': '15m', 'bb_len': 7, 'buy_len': 44, 'buy_mult': 2.664, 'sell_len': 20, 'sell_mult': 2.54, 'buy': 1, 'buyZhiying': 12.704, 'buyZhisun': 7.525, 'sell': 1, 'sellZhiying': 6.112, 'sellZhisun': 1.52}

"""
布林带升级版定向策略
"""
def BBv3(r, df, seting):
    df['ma'] = SMA(r, seting['bb_len'], 'Close')

    df['upper'] = df['ma'] + seting['sell_mult'] * talib.STDDEV(df['Close'], timeperiod=seting['sell_len'])
    df['lower'] = df['ma'] - seting['buy_mult'] * talib.STDDEV(df['Close'], timeperiod=seting['buy_len'])

    c = len(df)
    for i in range(c):
        if i > seting['sell_len'] and i+1 < c:
            if df['Close'][i] > df['lower'][i] and df['Close'][i-1] < df['lower'][i-1]: # and df['Close'][i] > df['ma2'][i]
                df['side'].values[i] = 'BUY'

            if df['Close'][i] < df['upper'][i] and df['Close'][i-1] > df['upper'][i-1]: # and df['Close'][i] < df['ma2'][i]
                df['side'].values[i] = 'SELL'

    return df

2.回测结果

BTCUSDT 15m:
图片alt

标签: 做空 boll

苏慕白 发布于  2021-12-19 12:44 

实在赚不到钱可以试试 笔记

心累了?
可以试试

  1. 网格交易
  2. 资金费率套利
  3. 交易所/交易对价格差对冲套利
  4. 跨期套利

苏慕白 发布于  2021-12-16 22:13 

Rsi MA平滑策略 策略

1.策略原理

计算Rsi值,再计算Rsi的Ma值,进行相减:Rsi-Ma(Rsi)
再把相减的值进行Ma平滑:Ma(Rsi-Ma(Rsi))

最后的结果 上穿0,开多,下穿0,开空

图片alt
图片alt

2. 回测结果

三个交易对组合投资,1hK线:
图片alt


苏慕白 发布于  2021-12-4 15:59 

追单 笔记

跟踪Eth链上的致富地址,他们买什么,就跟着买什么


苏慕白 发布于  2021-12-4 12:46 

Boll布林带波动率策略 策略

1.策略原理

开仓条件:Boll开口扩大,中轨往上走,Rsi没有超买,Atr大于前值
平仓条件:Boll开口缩小,中轨往下走

图片alt

2.回测结果

15mK线,只做多:
图片alt

标签: boll

苏慕白 发布于  2021-12-4 12:22 

Boll布林带突破策略 策略

1.策略原理

一个很简单的策略
突破上轨,且Rsi没有超卖时做多,价格回归中轨时平仓

代码:

seting = {'name': 'BB', 'symbol': 'ETHUSDT', 'kTime': '15m', 'bb_len': 129, 'bb_mult': 2.259, 'rsi_len': 22, 'rsi_long_min': 15, 'rsi_long_max': 76, 'rsi_short_min': 12, 'rsi_short_max': 74, 'buy': 1, 'buyZhiying': 13.037, 'buyZhisun': 8.014, 'sell': 1, 'sellZhiying': 5.084, 'sellZhisun': 13.086}

"""
布林带策略
"""
def BB(r, df, seting):
    df['ma'] = SMA(r, seting['bb_len'], 'Close')
    df['mult'] = seting['bb_mult'] * talib.STDDEV(df['Close'].values, timeperiod=seting['bb_len'])
    df['upper'] = df['ma'] + df['mult']
    df['lower'] = df['ma'] - df['mult']
    df['rsi'] = talib.RSI(df['Close'].values, timeperiod=14)

    c = len(df)
    for i in range(c):
        if i > seting['bb_len'] and i+1 < c:
            if df['Close'][i] > df['upper'][i] and df['Close'][i-1] < df['upper'][i-1] and\
                df['rsi'][i] >= seting['rsi_long_min'] and df['rsi'][i] <= seting['rsi_long_max']:
                df['side'].values[i] = 'BUY'

            if df['Close'][i] < df['ma'][i] and df['Close'][i-1] > df['ma'][i-1]:
                df['close'].values[i] = 'BUY'

            if df['Close'][i] < df['lower'][i] and df['Close'][i-1] > df['lower'][i-1] and\
                 df['rsi'][i] >= seting['rsi_short_min'] and df['rsi'][i] <= seting['rsi_short_max']:
                df['side'].values[i] = 'SELL'

            if df['Close'][i] > df['ma'][i] and df['Close'][i-1] < df['ma'][i-1]:
                df['close'].values[i] = 'SELL'

    return df

2.回测结果

图片alt

标签: 做空 boll

苏慕白 发布于  2021-12-4 10:58 

DMI策略 策略

1.策略原理

很简单的一个策略,只用了DMI一个指标
获得DMI两条线后相减,再把值做平滑处理
值 > 0 且大于上一个值 就做多

DMI指标的计算可以看我发过的ADX指标里面有

代码:

"""
DMI指标策略
"""
def DMI(r, df, seting):
    a, b = DI(r, seting['dmi_len'])
    df['dmi'] = a-b

    if seting['ma_type'] == 'sma':
        df['dmi'] = SMA(df['dmi'].values, seting['ma_len'])

    if seting['ma_type'] == 'ema':
        df['dmi'] = talib.EMA(df['dmi'].values, seting['ma_len'])

    if seting['ma_type'] == 'rma':
        df['dmi'] = RMA(df['dmi'].values, seting['ma_len'])

    c = len(df)
    for i in range(c):
        if i > seting['ma_len'] and i+1 < c:
            if df['dmi'][i] > 0 and df['dmi'][i] > df['dmi'][i-1]:
                df['side'].values[i] = 'BUY'

            if df['dmi'][i] < 0 and df['dmi'][i] < df['dmi'][i-1]:
                df['side'].values[i] = 'SELL'

    return df

2.回测结果

15mk线 2021年:
图片alt


苏慕白 发布于  2021-12-3 16:29