本策略主要为了方便小白们能快速简单地使用常规马丁的策略 策略仅供个人用户使用,请勿用于商业用途 请注意,此策略非圣杯,有一定的风险,建议回测好后再使用
1、支持多币种多空双开,可配置首仓金额、补仓间隔、全仓止盈比例、尾仓止盈比例,单币止损金额 2、帐户信息显示,包括起跑时间、初始资金、实时权益、浮盈、昨日收益、今天收益、累计收益、日化、月化、年化等等 3、仓位显示,包括币种信息、持仓价、持仓数量、持仓方向、持仓价值、持仓浮盈、币种累计收益、当前步数(无仓位为0步,首仓为1步,每补一次步数+1)等
本策略属于非常简单马丁功能,可同时跑多币种,原理如下(按默认配置): 1、没有仓位时,直接开仓,多空双开 2、亏损2.5%时,加仓,加仓金额为上次开仓价的2倍 注:若加仓倍数为2,即每单开仓金额为首仓的倍数比为1、2、4、8、16如此类推 3、尾仓盈利2.5%时,平尾仓 4、全仓盈利1.5%时,市价全平 5、若浮亏达到止损金额,则市价全平 适合比较稳定的币,如BTC、ETH、BNB、EOS、BCH等,不适合波动大的币
由于fmz回测功能的限制,回测多个币种时,每个币种是单独计算盈利的,无法计算多币种同时跑时的回撤情况,因此多币种同时跑时,请注意风险 因为马丁属于抗单策略,因此需要通过计算最大浮亏,来确定策略是否容易出现爆仓情况 而发明者回测马丁时,最大回撤不太准确,策略已自动计算最大浮亏(注意,最大浮亏并非最大回撤),可在日志中查看此数据来确定爆仓风险
策略未限定最大补仓次数,因此遇上大波动的币时会出现爆仓 有需要的可自己加入其它限制
作者经过两年的精心研发,目前研究出来两款长期较稳定的马丁策略: 1、趋势马丁(合约) 此策略经历近一年半的回测,适合大部分行情,包括暴跌,小牛市等,但不适合阴跌,大牛市,年化约200%,风险中,有较低的暴仓风险(若出现连续多次止损),适合长跑 2、趋势马丁网格(现货) 月化约3%~5%,此策略经历2020年至今的回测(因币安历史数据只有2020年后的),只经历过短期被套(一个月内)。由于是现货,因此无暴仓风险,同时不止损,适合长期看涨的朋友。回测加入LUNA和FTT币,其中LUNA属于连续阴跌,套了一定资金后,策略不再开仓,会有20%左右的亏损。FTT属于极端暴跌,策略并无加仓,因此亏损极少。
/*backtest start: 2021-09-01 00:00:00 end: 2022-08-01 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT","balance":10000}] */ $.conf.SHOW_POS = true function main() { const ex = $.fmz(null, exchanges[0]) const exModel = $.ExModel.create(ex, '', '', 'm', BASE_MONEY, false, { SHOW_LOG: true }, 'USDT') const exCache = exModel.initModel(ex, exchanges.map(e => e.GetCurrency().split('_').join('')), ((ex, bcache, uBalance, mds, uPrices) => { for (let md of mds) { if (md.position.positionAmt == 0) { // 没有仓位时,直接开仓,多空双开 md.position.toOpen = true md.position.openMoney = BASE_MONEY } else { if (getPrePrecent(md.position) < -OPEN_PRECENT) { // 亏损2.5%时,加仓,加仓金额为上次开仓价的2倍 md.position.toOpen = true md.position.openMoney = md.position.preAmount * md.position.prePrice * ADD_PRECENT } else if (getPrePrecent(md.position) > CLOSE_PRE_PRECENT) { // 尾仓盈利2.5%时,平尾仓 md.position.toClose = true md.position.justSub = true } else if (getEntryPrecent(md.position) > CLOSE_PRECENT || getProfit(md.position) < -STOP_VALUE) { // 全仓盈利1.5%时,全平 md.position.toClose = true md.position.justSub = false } } } })) while (true) { LogStatus($.getStatus()) $.loop() } }
Dengxiaokai 大佬 运行起来总是错误
kb 有问题可以电报截图联系我