一、夜盘交易的基本情况

目前期货市场上,越来越多的品种都加入了夜盘交易大军。截止7月23日,目前已经确定在夜盘交易的有:

上海期货交易所:白银ag,铜cu,金au,锌zu

大连商品交易所:棕榈油p、焦炭J

另外,根据郑州商品交易所的公告,2014年8月4日也将会启用白糖、棉花和甲醇三个品种的夜盘交易。

二、交易开拓者与夜盘相关的几个函数

1、Date

属于系统函数,使用时类似于序列变量回溯值的使用。如Date,Date[1],Date[2]。

在无夜盘的情况下,我们经常使用这种语句来表示一天的开始初始化:

If (Date!=Date[1])

{ }

Else

{ }

这种语句,在有夜盘的情况下不能使用。原因是晚上2:00的bar的date值,与早上9:00的bar的date值是一样。晚上21:00的bar的值,也与下午3:00的bar的date值一样。Date!=Date[1]只发生在晚上0:00的时候。

2、CurrentDate

获取交易开拓者平台的当前日期。获取的是当前时间,与bar值无关。

3、Truedate

交易开拓者TB平台自带的“用户函数”,但在TB手册中没有介绍。

由于是用户函数,引用方法是:Truedate(0), truedate(1), truedate(2)等。

truedate返回指定Bar的真正交易日期。

所谓真正交易日期,简单而言就是所有夜盘算入一一个白天的交易日日期。

周一晚上21:00开始的夜盘,其truedate属于周二的日期;周五晚上开始的夜盘,其truedate属于下周一。用以下语句可以作为一天的初始化

If (trueDate[0]!=trueDate[1])

{ }

Else

{ }

4、OpenD

交易开拓者TB平台自带的“用户函数”,但在TB手册中也有介绍。其引用方法是OpenD(0), OpenD(2), OpenD(3)等。

OpenD是求N天前的开盘价,语法是:Numeric OpenD(Numeric daysAgo)

有夜盘的品种的开盘价OpenD是取晚上9:00的开盘价,

而没有夜盘的品种的开盘价OpenD是取早上9:00的开盘价。

而highD,lowD,其意义是相同的,即是取一个完整truedate的最高、最低值。

5、Time

系统函数,返回当前公式应用商品在当前Bar的时间。语法 Numeric Time()。

三、几个问题的编程实现

1、如何过滤掉集合竞价

采用以下语句,过滤掉两个时间的集合竞价,适合于夜盘与非夜盘品种一起用。

If(BarStatus==2 && Time==0.090000 && High==Low) return;

If(BarStatus==2 && Time==0.210000 && High==Low) return;

2、是否可以用bar的数目来判断当天的情况

虽然当使用的K线周期确定,一天bar的数目也是确定的。但是在遇到节假日时,当天晚上经常没有夜盘,所以会导致bar的数目混乱,不宜使用。

3、如何用交易开拓者查看各函数值的情况

当不清楚各函数,如前文所说的openD, truedate的取值时,建议使用以下公式应用,放在具体的超级图表上,则可以看到各函数的取值情况。

Params

Vars

Begin

FileAppend ("d:\\print2.log",DateTimeToString(Date+Time)+" Date=" +Text(Date)+" Date[1]="+Text(Date[1])+" CurrentDate="+Text(CurrentDate)+" OpenD(0)="+Text(OpenD(0))+" OpenD(1)="+Text(OpenD(1))+" OpenD(2)="+Text(OpenD(2))+" truedate(0)="+Text(truedate(0))+" truedate(1)="+Text(truedate(1))+"\t");

End

4、将以往程序修改成为适应夜盘程序的思路

主要看使用的策略情况,以下是几个可能影响到的点:

(1)交易日bar的数目,bar的时间

(2)是否使用(Date!=Date[1])的判断

(3)使用openD,HighD, LowD的逻辑判断,如有夜盘,会指到21:00开盘后的一天的价格。

交易开拓者TB夜盘编程技术集相关推荐

  1. 2. 交易开拓者-TB 公式(一)

    文章目录 2 TB公式编写 1. TB 公式的结构 TB公式一般由三段构成: 参数 变量 表达式 Bar数据 开仓平仓 2 TB公式编写 1. TB 公式的结构 TB公式一般由三段构成: 公式参数段 ...

  2. 4、交易开拓者-TB用户函数

    文章目录 三.TB用户函数 用户函数 使用规则 编写 函数的调用 三.TB用户函数 用户函数 用户函数是公式种的一类,他的结构遵循一般公式的结构,分为公式参数段.公式变量段和公式脚本段:但具体的声明和 ...

  3. 3. 交易开拓者-TB公式(二)

    文章目录 3.TB公式(二) 分支语句 简单分支 双分支 多分支结构 if语句的嵌套 循环语句 For 循环 While 循环 3.TB公式(二) 分支语句 简单分支 If (conditions) ...

  4. 交易开拓者tb组合26万保证金7年盈利250万-tb_yun_trend2

    性能概要 统计指标 全部交易 多头 空头 净利润 2503546.16 1263189.48 1240356.68 总盈利 5006690.32 2436618.71 2570071.61 总亏损 - ...

  5. 按键精灵实现交易开拓者TB自动化优化参数

    按键精灵语法比较简单,只要是重复性的电脑操作,都可以用按键精灵编写小的脚本来实现. 下面这个小脚本是实现的用TB旗舰版优化参数的时候自动输入优化的区间,自动确认优化,比手动输入要快很多. //打开参数 ...

  6. 按键精灵一键从交易开拓者TB下载各个品种日线数据

    Call xiazai("cu000")//下载铜 Call xiazai("al000")//下载铝 Call xiazai("zn000" ...

  7. 计量经济与时间序列_ACF自相关与PACF偏自相关算法解析(Python,TB(交易开拓者))

    1   在时间序列中ACF图和PACF图是非常重要的两个概念,如果运用时间序列做建模.交易或者预测的话.这两个概念是必须的. 2   ACF和PACF分别为:自相关函数(系数)和偏自相关函数(系数). ...

  8. 游戏编程精粹1-6分类目录之通用编程技术部分

    游戏编程精粹1-6分类目录之通用编程技术部分 ----------第一册------------------------- 第1章 通用编程技术 1.0 神奇的数据驱动设计(Steve Rabin) ...

  9. Microsoft微软公司硬件控制编程技术介绍

    我是荔园微风,作为一名在IT界整整25年的老兵,最近遇到一个技术问题,就是公司同事问我,有没有什么好的硬件控制编程技术可以选,我说有啊,很多啊,比如linux嵌入式编程啊,比如纯粹的单片机C编程啦,再 ...

最新文章

  1. 使用String()解决utf-8字符转GB2312的问题
  2. Java 增强型的for循环 for each
  3. 怎么修改与服务器的操作系统,怎么修改与服务器的操作系统
  4. HashMap的存储过程
  5. 担保债务凭证(Collateralized Debt Obligation,简称CDO) CLO/CBO
  6. Markdown基本语法总结
  7. Python---编程检查并判断密码字符串的安全强度
  8. docker run 挂载卷_docker mysql配置挂载到卷
  9. 修改SqlServer的登录密码
  10. 对unicode数据进行部分replace
  11. 比excel更好用的免费拖拽报表—JimuReport 1.4.4新特性
  12. BZOJ_2179_FFT快速傅立叶_(FFT)
  13. android ril.java_Android RIL的java框架
  14. 20135337——信息安全设计基础第十四周学习笔记
  15. JS基础知识点大汇总
  16. USB3.0高清视频和音频采集处理芯片——MS2131
  17. python 005 __ 小斌文档 | 函数的定义和调用
  18. Silverlight 2教程(四):Chiron.exe:Silverlight 2打包和动态语言部署工具
  19. (七)VBS变量、数组使用
  20. 推荐系统综述--初识推荐系统(美研面试专用)

热门文章

  1. 我在ITPUB的“流金”岁月——jieforest(磨刀霍霍向猪羊)
  2. 一年中的第n天是几月几号?
  3. 解决Reiserfs文件系统损坏的问题我们是认真的
  4. 朋友圈广告推广形态及价格
  5. NetCMS使用BUG记录及解决方法
  6. 《Windows程序设计》读书笔二十 多任务和多线程
  7. 三、大数据实践——构建新特征指标与构建风控模型
  8. sublime修改默认浏览器及使用不同浏览器打开网页的快捷键设置
  9. 操作系统的运行机制与体系结构
  10. To see the stack trace of this error execute with --v=5 or higher