以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- [求助]01.移动止损模块范例 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=165460) |
-- 作者:norlat -- 发布时间:2018/9/11 9:17:40 -- [求助]01.移动止损模块范例 在使用移动止损模块范例时,模拟的时候按初始资金5万进行,没有问题。 但是实盘的时候,用该策略的时候,模块自动使用自己设置的初始资金100万进行交易,金额大于实盘账号资金,每次下单都大于账号资金,导致CTP拒绝交易。策略无法实施。 请问如何调整系统,或者是需要重写该策略。 谢谢指导!
|
-- 作者:banzhuan -- 发布时间:2018/9/11 9:27:59 -- 1、您使用的是下图的案例策略交易的吗? 该策略中是以30%的资金进行开仓,您实盘是多少资金呢? 交易的是什么品种, 是否用30%的资金不够开仓呢? 2、您可以描述下您具体需求,比如每次开、平仓多少手
[此贴子已经被作者于2018/9/11 9:29:13编辑过]
|
-- 作者:norlat -- 发布时间:2018/9/11 9:29:58 -- 是的,实盘资金是5万,交易焦炭1901。谢谢老师指导! |
-- 作者:norlat -- 发布时间:2018/9/11 9:31:15 -- 补充,每次开1手,后续也是平1手。谢谢! |
-- 作者:banzhuan -- 发布时间:2018/9/11 9:59:40 -- 1、5W的30%可能买不了一手焦炭; 2、买一手可以这样写: buy(1,1,marekt);//红色即交易手数 平仓同理: sell(1,1,market); 用法:BUY(COND,V,Type,P);表示当COND条件成立时,买入V股(手)当前品种,TYPE表示买入类型,P表示买入价格,所有参数均可以省略。
|
-- 作者:norlat -- 发布时间:2018/9/11 10:15:44 -- 感谢老师指导!没有留意BUY的30%了,没有仔细阅读代码,惭愧!! 另外对于此范例还有不明白的地方,还请老师说明,关于以下代码: //移动止损部分************************ //求出持仓以来的最高价或最低价,通过与当前价做比较,判断资金回落的幅度 DTYDZS:=(HHV(H,ENTERBARS)-CLOSE)/AVGENTERPRICE>=0.1; KTYDZS:=(CLOSE-LLV(L,ENTERBARS))/AVGENTERPRICE>=0.1; SELL(DTYDZS,0,MARKET); SELLSHORT(KTYDZS,0,MARKET); //************************************* 我理解DTYDZS表示动态移动止损,那么KTYDZS是否表示固态移动止损?这两个语句的逻辑不是很明白,我猜想“0.1”是否可以按照风险偏好调整? 另外此处有sell和sellshort,在下面的代码也有同样的下单的sell, sellshort代码。这个不会冲突么?还是金字塔是从上到下执行,先满足到上面的话就先执行? 谢谢老师指教! |
-- 作者:banzhuan -- 发布时间:2018/9/11 10:27:05 -- 1、DTYDZS是多头的移动止损条件,KTYDZS是空头的,0.1是回落幅度,可以自行调整的; 2、是从上至下执行的,移动止损满足的话先执行
|
-- 作者:norlat -- 发布时间:2018/9/11 15:04:56 -- 谢谢老师指导! |
-- 作者:norlat -- 发布时间:2018/9/17 14:15:40 -- 老师,关于“图表交易模块范例---移动止损模块”有如下疑问: 1. 关于下单条件: 源代码****************** //绘制四条均线 MA1:MA(C,5); MA2:MA(C,10); MA3:MA(C,20); MA4:MA(C,60); //下单条件 COND1:=CROSS(MA2,MA1); COND2:=CROSS(MA1,MA2); ************************* 问题: 以上条件一是MA5从下穿越MA10,条件二是MA10从下穿越MA5。 这两个条件与我们平时理解短周期MA突破长周期MA,表示上升趋势;短周期MA向下突破长周期MA,表示向下趋势; 不知道是我对MA使用理解错误,还是对源码理解上有差异,烦请老师指正。 2. 关于移动止损部分 //移动止损部分************************ //求出持仓以来的最高价或最低价,通过与当前价做比较,判断资金回落的幅度 DTYDZS:(HHV(H,ENTERBARS)-CLOSE)/AVGENTERPRICE>=0.1; KTYDZS:(CLOSE-LLV(L,ENTERBARS))/AVGENTERPRICE>=0.1; SELL(DTYDZS,0,MARKET); SELLSHORT(KTYDZS,0,MARKET); //************************************* 问题: 关于以上多头移动止损和空头移动止损,在模拟中好像都无法起到作用,我尝试对资金回落幅度进行调整(0.01-0.06),但是好像收效不大。可否请老师说明一下其中逻辑。 延伸问题: 1)正如此段范例描述,要走完一根K线才会进行止损,如何写一段代码在没有走完K先,但是在K线内已经达到摆动峰值即自行,请老师指导; 2)我想编写相对应的移动止盈的代码,可否请老师给予指导或提供类似范例学习。 谢谢! |