叠加多品种情况下,多空两策略如何共用一个计数器

目前的代码大概如下,计数器放在开仓的地方.

vars

Global Numeric 计数器;


Events

if(......)

{......计数器=0)} //每日开盘重置为0

if (......计数器==0......)

{

sellshort.........      ;

计数器=计数器+1;

}


现在这个策略分开写成多空两个版本,  20个品种回测时选"叠加"的方式

由于可能要再加入其他低频策略, 目前这个策略想限制一日之内,多空两个版本总的开仓次数为1次.  有无简单的方法?








一个品种两个策略,一个做多,一个做空,如何只撤做多挂单,或者做空挂单
在持有多单的情况下开空单如何表达
我想用系统的海龟系统,加上一点策略,同时监控所有系统,但是多空均只允许开两个品种,多仓有持有两个品种后,不再允许开其他多仓品种,空仓也一样。
多空方向单子如何互不干扰
旗舰版多空两个程序加载超级图表后同时多空持仓
多空策略分开写是否要再一个图表里面交易还是分开?
多品种开仓问题
一个策略多品种模拟交易持仓状态问题
如何用tbpy做多品种交易?
单品种多策略比较

建议看一下基础教程里关于计数器的教学。

sellshort怎么会用global计数器,我看不懂

从回测结果看,叠加多品种情况下。单独一个策略的话,用序列函数做计数时第一笔平仓后,若别的品种有信号会继续开仓。

改成global就不会,只会开一笔。

要的效果就是开一笔

序列变量

哦,你是要用一个状态变量控制多图层,是可以用global类型。

如果是一个单元内的两个策略,可以用setglobalvar试试跨策略控制。


SetGlobalVar-设置某个索引的全局变量值

GetGlobalVar-获取某个索引的全局变量值

试试这两个函数呢 帮助文档可以查看使用方式

(咦 这种算函数吗 )

这个可以在策略单元内部传递

方案太多了

不知道选哪个好🤣

根据你的表述

在实盘状态下

上面那么多方案一个都不用


只要读取是否当前品种是否报过单就可以

这个最简单

谢谢,花了十五分钟把多空两策略合并成一个了,达到了效果. 有机会试试你说的方法.

多空策略分开挺好的

你怎么又合并了😂

就点下新建,有什么好不好的

👍

同步有很多方案

简单列几种:

1 基础数据非持久化(仅限于单元内部)/持久化(客户端公用 + 效率极低)

2 读写数据库

3 读写文件

4 setBar/getBar(单元内部应该可行)

5 事件(单元 && 客户端)

6 订单流事件(单元 && 客户端 && 非TB单)

。。。


随便选一个

这段 得笔记记下来

又好久没见到🐷兄了

赚大钱去了?


肯定在闷声干大事 也要加油哦~