操作系统:Windows7 32位金字塔版本:3.7
图表程式化交易
RUNMODE:0; //逐K线模式,仅刷最后一根K线
现金T:TACCOUNT(20),LINETHICK0;
持仓T:THOLDING,LINETHICK0;
现金K:cash(0),linethick0;
持仓K:holding,linethick0;
资产:asset,noaxis,linethick0;
------------------------------------------------------
输出结果:
TACCOUNT(20),THOLDING输出正确;
cash(0),holding,asset的输出都是错误的;
在没有持仓的情况下,
cash(0)的输出小于实际的可用现金,
asset的输出大于实际的资产,
holding的输出竟然是负数。
求解!
这holding图表虚拟持仓和你账户实际持仓没有任何关系的,您看下图表前面有多少开平 信号算下当前持仓是多少
不明白为什么是这样?
如果holding图表虚拟持仓和账户实际持仓没有任何关系,那cash(0),holding,asset这些函数有什么用呢?
比如:
BUY(holding=0,1,LIMIT,4000);
在空仓的情况下,如果holding输出不是0,而是负数,能成交吗?
[此贴子已经被作者于2015/10/27 16:33:35编辑过]
1.你需要先理解图表实现的机制。图表时一个相对独立的系统。holding的函数说明已经说明多仓为正,空仓为负。并且这个持仓是图表中的虚拟持仓量。并不是你真实账户的持仓量。
两者之间的关系,就是出现信号后,真实账号跟着图表中虚拟的持仓进行操作。
又问:
1、
手数: cash(0)/CLOSE/0.2/10;
BUY(1,手数,LIMIT,4000);
出现交易信号时算出来的手数是否正确?
2、如何理解图表实现的机制?
http://www.weistock.com:8080/down/class/?4.html
在上述连接中有文档可以下载。金字塔编程基础篇中的60页有对实现的机制进行描述。
cash说获取的是图表中虚拟的资金量。关于函数的解释在函数说明中都有提到。希望你先理解函数说明后在进行使用。
都是图表的,你有一个buy语句就是表示有一手holding
图表不支持锁仓,你下面提的情况不会成立。
BUY(holding=0,1,LIMIT,4000);
在空仓的情况下,如果holding输出不是0,而是负数,能成交吗?