以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  提示引用公式太多,如何解决;如何设置全局变量控制亏损次数,超过就不再开仓  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=61269)

--  作者:coldmachine
--  发布时间:2014/1/24 16:46:38
--  提示引用公式太多,如何解决;如何设置全局变量控制亏损次数,超过就不再开仓

提示引用公式太多,如何解决;如何设置全局变量控制亏损次数,超过就不再开仓?

 

另外,小窗中总是有4条红线,如何消除?

 

谢谢


图片点击可在新窗口打开查看此主题相关图片如下:50.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:if02.png
图片点击可在新窗口打开查看

--  作者:lichenghu
--  发布时间:2014/1/24 16:51:16
--  

您好,对应版本V3.1?

1,对应报错时当前K线图的界面也给我看下

另外您试下换个公式会不会存在上面的情况?

 

2,这4条线是不是对应您的画线?新建框架的时候不会有这种线

 

[此贴子已经被作者于2014/1/24 16:52:31编辑过]

--  作者:lichenghu
--  发布时间:2014/1/24 17:03:45
--  
http://210.14.66.209/bbs/dispbbs.asp?BoardID=4&ID=53236&skin=0   2.2,限定日内交易次数
--  作者:lichenghu
--  发布时间:2014/1/24 17:08:10
--  

 序列变量:
  序列变量其实就是一个数组,我们平时接触最多的是收盘价close,写一行代码“fc:close",就是定义了一个变量fc,并把收盘价赋值给变量fc。这里变量fc就是序列变量,因为fc不是一个值,而是一序列随时间而变化的值(收盘价),在K线图中,从第1K线到最后1K线都有一个收盘价,因此fc跟单值变量不同,是由一系列的值组成的变量,因此我们称之为序列变量。事实上,把“fc:close”这行代码做成一个指标,就可以看出fc是一条变化的曲线而不是一条水平直线。
  金字塔新的公式系统,可以把序列变量等同于一个数组,这是一个特殊的数组,这个数组的最小下标是从序列变量的起始有效位置开始,数组的最大下标是K线数量,其中K线的数量,可以从datacount函数得到

 

对应序列变量参数即为您把对应的序列变量当做一个参数来使用,某些特定的函数里面是无法使用不是固定的数字

 

例如您使用STKINDI时后面的参数采用序列变量

STKINDI(\'\',\'MA.MA1\',C,6,0)//此代码编译就会出现您所截图提示错误

[此贴子已经被作者于2014/1/24 17:29:06编辑过]

--  作者:coldmachine
--  发布时间:2014/1/24 18:49:42
--  

【金字塔使用技巧】----当日亏损超过5次,则不再交易[图表程序化交易]

 

当日亏损交易次数超过5次,则不再开仓如何写?----图表交易

部分示例(1) :

variable:lossnum=0;// 全局变量,平仓时判断一下是盈利/亏损,若亏损lossnum就加1

cs:=5;//限定一天最多亏损5次

 

ma5:=ma(5,close);

ma20:=ma(20,close);

 

con1:=cross(ma5,ma20);

con2:=cross(ma20,ma5);

if cond2 and holding>0 then

begin

  sell(1,1,thisclose);

  if c<enterprice then lossnum:=lossnum+1;

end

if cond1 and holding=0 and lossnum<cs then  buy(1,1,thisclose);

 

if time=closetime(0) then lossnum:=0;// 商品期货,收盘的同时,lossnum赋值为0

//收盘lossnum不赋值为0,第二天就不再开仓了

 


--  作者:coldmachine
--  发布时间:2014/1/24 18:55:01
--  
以下是引用lichenghu在2014/1/24 17:08:10的发言:

 序列变量:
  序列变量其实就是一个数组,我们平时接触最多的是收盘价close,写一行代码“fc:close",就是定义了一个变量fc,并把收盘价赋值给变量fc。这里变量fc就是序列变量,因为fc不是一个值,而是一序列随时间而变化的值(收盘价),在K线图中,从第1K线到最后1K线都有一个收盘价,因此fc跟单值变量不同,是由一系列的值组成的变量,因此我们称之为序列变量。事实上,把“fc:close”这行代码做成一个指标,就可以看出fc是一条变化的曲线而不是一条水平直线。
  金字塔新的公式系统,可以把序列变量等同于一个数组,这是一个特殊的数组,这个数组的最小下标是从序列变量的起始有效位置开始,数组的最大下标是K线数量,其中K线的数量,可以从datacount函数得到

 

对应序列变量参数即为您把对应的序列变量当做一个参数来使用,某些特定的函数里面是无法使用不是固定的数字

 

例如您使用STKINDI时后面的参数采用序列变量使用STKINDI时后面的参数采用序列变量

STKINDI(\'\',\'MA.MA1\',C,6,0)//此代码编译就会出现您所截图提示错误

STKINDI(\'\',\'MA.MA1\',C,6,0)//此代码编译就会出现您所截图提示错误

 

 

那么如何 正确引用日线周期数据?

 

STKINDI(\'\',\'MA.MA1\',0,6,0) //第一个数字0表示交易日时间;如果是1表示自然日时间;

 

如果第一个数字是2 表示啥时间?

[此贴子已经被作者于2014/1/24 17:29:06编辑过]


--  作者:coldmachine
--  发布时间:2014/1/24 21:05:02
--  
以下是引用coldmachine在2014/1/24 18:49:42的发言:

【金字塔使用技巧】----当日亏损超过5次,则不再交易[图表程序化交易]

 

当日亏损交易次数超过5次,则不再开仓如何写?----图表交易

部分示例(1) :

variable:lossnum=0;// 全局变量,平仓时判断一下是盈利/亏损,若亏损lossnum就加1

cs:=5;//限定一天最多亏损5次

 

ma5:=ma(5,close);

ma20:=ma(20,close);

 

con1:=cross(ma5,ma20);

con2:=cross(ma20,ma5);

if cond2 and holding>0 then

begin

  sell(1,1,thisclose);

  if c<enterprice then lossnum:=lossnum+1;

end

if cond1 and holding=0 and lossnum<cs then  buy(1,1,thisclose);

 

if time=closetime(0) then lossnum:=0;// 商品期货,收盘的同时,lossnum赋值为0

//收盘lossnum不赋值为0,第二天就不再开仓了

 

这个执行后,图标第5个信号之后就再也开不出单子啦,啥原因 ?

[此贴子已经被作者于2014/1/24 21:05:25编辑过]

--  作者:lichenghu
--  发布时间:2014/1/26 9:45:14
--  

1,2表示交易时间坐标,可以看下函数说明

 

2,对应此处是限定一天内亏损不超过5次,您是不是全部是日内交易?

自行分析下原因,为什么后续没有信号!

 


--  作者:coldmachine
--  发布时间:2014/11/25 12:03:32
--  
提示引用公式太多,如何解决;
--  作者:pyd
--  发布时间:2014/11/25 12:58:12
--