Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共105 条记录, 每页显示 10 条, 页签: [2][3][4][5] [6] [7][8][9]
[浏览完整版]

标题:请帮忙写个代码

51楼
FireScript 发表于:2021/5/19 15:35:04
 没有恢复平空开多?意思是最后应该是持有多仓的?
52楼
悠莲 发表于:2021/5/19 15:40:43
对啊,收盘前复核做空信号消失了,应该重新开多单
53楼
FireScript 发表于:2021/5/19 15:58:23
 我大概知道是怎么回事了。是历史信号限制到了这里的交易逻辑。
我看了下之前位置前 有个 开多信号。

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

这样的话,今天日线上 一开始出现平多开空信号,这样逻辑原本是没问题的。但是这个信号消失了之后,那么现在虚拟持仓就是一个多仓了已经,这样导致图表上无法再发出开多信号了。  因为图表上最新K位置信号都是依靠最新的数据生成的,因此中间过程 是不记录的。所以你这个复核的需求 就没用成功实现了。

目前的话,可能只能用持仓同步功能操作下了。


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


54楼
悠莲 发表于:2021/5/19 17:11:12
那么我是应该选择走完一根K线同步吗?这样的话同步是在什么时间实现呢?收盘前几秒?还是次日开盘?
55楼
FireScript 发表于:2021/5/19 17:12:23
你这个恐怕的用固定时间间隔的。否则没办法在收盘前 给你持仓矫正过来。
56楼
悠莲 发表于:2021/5/20 9:42:13
固定时间间隔计算的是自然时间?那我要让所有加载品种都在收盘前同步的话应该怎么设置这个时间呢
57楼
悠莲 发表于:2021/5/20 9:43:35
设86400秒?问题是怎么控制这个间隔时点正好在一天收盘前呢
58楼
yukizzc 发表于:2021/5/20 10:06:37
这个没有办法控制在某个时间点去执行持仓同步
59楼
悠莲 发表于:2021/5/20 14:24:42
引用过多有办法解决吗,假如像开始那样全部写在一套代码里,会不会就不会发生这个问题?另外如果改写麻烦把收盘前复核的内容也删掉,因为实现不了
60楼
FireScript 发表于:2021/5/20 14:44:44
 1.发现了之前没发现的一个BUG 。有2个地方的引用没传参数。我改了之后挂了很久 反正没再出现那个报错了。因为这个参数不同,是作为不同的引用的。你试试呢。

INPUT:N(21,1,100,1),ss(1,1,100,1);
kd:c>ema(c,N) and "A.kd#MIN1"(N);
pd:"A.pd#MIN1"(N);

kk:c<ema(c,N) and "A.kK#MIN1"(N);
pk:"A.pk#MIN1"(N);


if kd or pk then
begin
sellshort(1,holding,market);
buy(holding=0,ss,market);    
END

if kk or pd then
begin
sell(1,holding,market);
buyshort(holding=0,ss,market);
END

2.去除复核的部分。可以把被调用指标改下就行了。去除那个时间的判断了。但是这样平仓就变了单纯的c>maN或者c<maN.  

INPUT:N(21,1,100,1);
emaN:(2*C+(N-1)*"EXPMA.M1##DAY"(N))/(N+1);
t:=timetot0(CLOSETIME(0))-time0;//距离收盘K的跨度(秒)

kd:all(c>emaN,15);//是否连续60周期满足
pd:c<emaN;//c<emaN


kk:all(c<emaN,15);//是否连续60周期满足
pk:c>emaN;//c>emaN


共105 条记录, 每页显示 10 条, 页签: [2][3][4][5] [6] [7][8][9]


Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 3 queries.