接触TB不久,一方面感受到了整体功能设计的完备与强大,同时意识到与其它通用编程语言相比, TB还是有一些限制。想请教下老师们都是如何组织管理自己的代码。
想要达到的目的是:
举个具体例子,想要基于同一个思路编写两个策略,一个用于做多,一个用于做空,大致的逻辑是相似的,但是在做多做空时会有细节处理上的不同, 要实现的功能包含以下几个部分:
希望可以做到#1部分被#2复用,使用时根据需要加载相应的策略到策略单元里进行组合, 我的问题是:
Q1: 用户函数只能返回基本的数据类型值, 索引参数似乎只支持Array, 如果要传递复杂一些的数据如Map, Dataframe, Series给调用的策略,有什么思路?
Q2: 如果将行情分析处理代码放到一个独立的策略里,如何将处理后的结果通过复杂一些的数据结构共享给在同一个策略单元里负责寻找交易信号的策略?
Q3: 如何实现上面将例子里控制风险和仓位,实现交易信号统一触发的部分放在一个独立的策略里?
希望各位老师不吝赐教,提供些思路和方向,谢谢!
这个东西很难几句话就说明白啊,而且每个人的模型是不一样的,怎么设计构造各种模块也是有各自的方法,很难一概而论啊。
第一个问题,map可以加ref后缀,具体能加的在语法手册里应该有。series没必要做引用,直接等于函数结果就好了。
第二个问题,可以通过读写数据库,也可以通过读写基础数据
第三,这个没法回答,这种实操方面的东西都是根据实际情况去设计,而且每个人风格不一样。
这就好比建一栋大楼,不同的人有不同的建法,课程里老师只能教你基本的规则,怎么运用规则去设计建造并没有绝对的约束。
好的,谢谢