金字塔决策交易系统

标题: 后台与图表区别 [打印本页]

作者: 葛伟星    时间: 2024-5-13 21:22
标题: 后台与图表区别
麻烦问一下,后台里面有序列和走完一根K线,那这里的走完一根K线和图表走完一根K线有什么区别呀

作者: 技术008    时间: 2024-5-14 08:59
一样的,走完k都是走完k线才去触发下单的
作者: 技术009    时间: 2024-5-14 09:02
本帖最后由 技术009 于 2024-5-14 09:04 编辑

走完K 是交易信号筛选模式,序列是指标的模式,他们不是一回事.  

信号筛选模式:https://www.weistock.com/docs/HE ... 7%E6%89%A7%E8%A1%8C
至于指标的序列模式和逐K模式,现在基本上大部分场景下对策略逻辑已经没有啥影响了.   只是图表模型必须逐K模式,后台则是无所谓,没啥影响.



作者: 葛伟星    时间: 2024-5-14 10:13
技术009 发表于 2024-5-14 09:02
走完K 是交易信号筛选模式,序列是指标的模式,他们不是一回事.  

信号筛选模式:https://www.weistock. ...

我是长江期货的账户,现在不能跑量化交易,能不能帮我解决一下?
作者: 技术008    时间: 2024-5-14 10:17
具体怎么不能跑?
作者: 葛伟星    时间: 2024-5-14 16:05
后台程序仅刷最后一根K线勾选有什么影响
作者: 技术008    时间: 2024-5-14 16:06
没有影响,这个是给逐k模式使用,只刷新最新一根k不刷历史
作者: 葛伟星    时间: 2024-5-15 08:23
技术008 发表于 2024-5-14 16:06
没有影响,这个是给逐k模式使用,只刷新最新一根k不刷历史

我一分钟引用15分钟指标,在一分钟里有信号闪烁的情况,麻烦请问下如何解决最可靠呀

补充内容 (2024-5-15 08:26):
我想在一分钟里信号确立了下根K线开仓,是不是直接选走完一根K线模式就可以了,主要想在代码里直接写好行不
作者: 技术008    时间: 2024-5-15 08:46
跨周期引用本身就会闪烁
你可以引用时候引用上一个15分钟的信号,不要引用当根15分钟
看stkindi函数说明,最后一个参数写-1就是表示向前引用
作者: 葛伟星    时间: 2024-5-15 13:53
技术008 发表于 2024-5-15 08:46
跨周期引用本身就会闪烁
你可以引用时候引用上一个15分钟的信号,不要引用当根15分钟
看stkindi函数说明 ...

我是这样引用的呀,可是在1分钟里依然有信号闪烁的情况
作者: 技术008    时间: 2024-5-15 13:54
你是怎么引用的完整代码贴下
另外可以自己配合debugfile输出下信号,看下信号为何变
比如盘中的话信号本身就是会变得
作者: 葛伟星    时间: 2024-5-15 13:56
葛伟星 发表于 2024-5-15 13:53
我是这样引用的呀,可是在1分钟里依然有信号闪烁的情况

a1:STKINDI('','macd.macd1',0,3,0);
a2:STKINDI('','macd.macd1',0,3,-1);

cond5:a1>0 and a2<0;//表示15分钟金叉
cond6:a1<0 and a2>0;//表示15分钟死叉
IF COND5 AND COND3 THEN BEGIN
    SELLSHORT(HOLDING<0,SS,MARKET);
        BUY(HOLDING=0,SS,MARKET);
    END
IF COND5 AND COND4 THEN BUY(HOLDING=0,SS,MARKET);
IF COND6 AND COND1 THEN BEGIN
        SELL(HOLDING>0,0,MARKET);
        BUYSHORT(HOLDING=0,SS,MARKET);
        END
IF COND6 AND COND2 THEN BUYSHORT(HOLDING=0,SS,MARKET);
IF COND5 THEN BEGIN
            SELLSHORT(HOLDING<0,SS,MARKET);
        BUY(HOLDING=0,SS,MARKET);
    END
IF COND6 THEN BEGIN
        SELL(HOLDING>0,0,MARKET);
        BUYSHORT(HOLDING=0,SS,MARKET);
END

IF A1>0 AND HOLDING<0 THEN SELL(1,0,MARKET);
IF A1<0 AND HOLDING>0 THEN SELLSHORT(1,0,MARKET);
作者: 技术008    时间: 2024-5-15 13:57

葛伟星 发表于 2024-5-15 13:53
我是这样引用的呀,可是在1分钟里依然有信号闪烁的情况

a1:STKINDI('','macd.macd1',0,3,0);


你这a1还是引用当前15分钟啊,就是会删
a2才是引用上一个
作者: 葛伟星    时间: 2024-5-15 15:07
技术008 发表于 2024-5-15 13:57
葛伟星 发表于 2024-5-15 13:53
我是这样引用的呀,可是在1分钟里依然有信号闪烁的情况

那怎样改才行,帮忙改一下好不
作者: 技术008    时间: 2024-5-15 15:08
a1:STKINDI('','macd.macd1',0,3,-1);


这段代码是你写的吗,如果是你写得,最后一个写-1应该知道,而且前面以及告知了这里-1表示向前引用

作者: 葛伟星    时间: 2024-5-15 15:28
IF A1>0 AND HOLDING<0 THEN SELL(1,0,MARKET); IF A1<0 AND HOLDING>0 THEN SELLSHORT(1,0,MARKET);你是说这里的A1改A2是吗
作者: 技术008    时间: 2024-5-15 15:30

a1:STKINDI('','macd.macd1',0,3,-1);

a1最后一个参数位置改成-1,表示向前引用
你之前写法是0,表示引用当根

建议先看下stkindi函数说明,重点理解最后一个位置参数得作用。0和-1分别表示,引用当根15和引用上一个15分钟得数据
作者: 葛伟星    时间: 2024-5-15 16:34
哎!金叉和死叉表示我就知道了!
作者: 葛伟星    时间: 2024-5-15 16:38
我A2不就是-1嘛
作者: 技术008    时间: 2024-5-15 16:40
看你12楼得代码
你得a1是0,是0

a1:STKINDI('','macd.macd1',0,3,0);
a2:STKINDI('','macd.macd1',0,3,-1);

cond5:a1>0 and a2<0;//表示15分钟金叉
cond6:a1<0 and a2>0;//表示15分钟死叉
IF COND5 AND COND3 THEN BEGIN
    SELLSHORT(HOLDING<0,SS,MARKET);
        BUY(HOLDING=0,SS,MARKET);
    END
IF COND5 AND COND4 THEN BUY(HOLDING=0,SS,MARKET);
IF COND6 AND COND1 THEN BEGIN
        SELL(HOLDING>0,0,MARKET);
        BUYSHORT(HOLDING=0,SS,MARKET);
        END
IF COND6 AND COND2 THEN BUYSHORT(HOLDING=0,SS,MARKET)
作者: 葛伟星    时间: 2024-5-15 16:42
就是说我只把最后下单语句中的A1改为A2就可以是不是!
作者: 技术008    时间: 2024-5-15 16:43
也可以,重要的是你理解了最后一个参数得作用没
0是表示当根,-1表示向前引用

作者: 葛伟星    时间: 2024-5-16 12:27
技术008 发表于 2024-5-15 16:43
也可以,重要的是你理解了最后一个参数得作用没
0是表示当根,-1表示向前引用

这个我当然知道的,我想说的是我这种策略,在走完K线模式下再下单,应该是没什么问题的

补充内容 (2024-5-16 12:28):
也就是说在1分钟走完,信号确定了,下根K线一出来就下单
作者: 技术008    时间: 2024-5-16 13:14
可以走完k,走完k只是说确定的是当前k的信号

你前面闪烁是因为你跨周期引用得到15分钟,大周期没走完所以会闪烁

所以要用-1引用上一个大周期




欢迎光临 金字塔决策交易系统 (https://www.weistock.com/bbs/) Powered by Discuz! X3.4