跳转到内容

NinjaTrader 8:插件

Trader、Pro和Fleet套餐。

NinjaTrader不为其他应用提供对其账户的只读访问,因此TakeJournal提供一个在NinjaTrader 8 Desktop内运行的小插件。它监听NinjaTrader所连接的每个账户的成交,并发送到您的连接:在NinjaTrader连接(Tradovate后端)、Rithmic、CQG及其他连接上都一样。它只读取;不下单,也不更改NinjaTrader中的任何内容。

连接 → 添加连接,类型NinjaTrader 8(插件),再填一个名称(例如运行它的电脑)。无需填写其他内容。连接卡片上有下载插件:一个包含插件和此连接密钥的.zip文件。每次下载都带一个新密钥,因此之前下载的插件会停止发送;一个连接对应一个NinjaTrader安装。

演示中的连接卡片:插件的状态、三个步骤和指南链接

  1. 在NinjaTrader 8中:Tools → Import → NinjaScript Add-On…,选择下载的文件。NinjaTrader会编译它并在完成时提示;当它询问是否授权插件TakeJournal时,选择Yes。只导入您自己下载的文件。
  2. 这样就完成了:此后插件随NinjaTrader启动,没有窗口。连接卡片会显示它最后一次联系的时间,以及多少个账户上的多少笔成交。当TakeJournal拒绝某些内容或无法连接时,插件会在Control Center → Log中提示一次,TakeJournal再次接收成交时再提示一次;更新版本的插件也会在那里通知。

如需移除:Tools → Remove NinjaScript Assembly,或在TakeJournal中删除连接,这会使其密钥失效。

每次交易时,请从第一笔委托之前到最后一个持仓平掉为止,一直让NinjaTrader和插件保持运行。NinjaTrader只向插件显示当前交易时段的成交:在NinjaTrader关闭期间成交的委托(夜间成交的止损、在手机上或经纪商网页平台上平掉的持仓)永远不会经由插件到达TakeJournal。TakeJournal会通过持仓发现这一点(见下文),但其价格和时间需要你自己补上。

  • NinjaTrader启动或账户连接时发送当前交易时段的成交,之后每笔新成交发生时立即发送。每批都会启动一次同步:成交后几秒钟,交易就进入您的日志。
  • 账户沿用NinjaTrader的名称(Sim101、您的自营交易公司的账户ID),使用NinjaTrader报告的货币。新账户在套餐的账户上限内时会加入;其余的由选择账户处理。
  • 每个委托一笔成交,与成交记录导出一样:分批成交的委托随每一部分增长。MNQ 12-26变为MNQZ6。NinjaTrader自身时区(Tools → Options → General)中的时间以UTC发送。
  • 回测和Market Replay(Backtest和Playback…账户)不包括在内。
  • 无法连接TakeJournal时,插件把待发送的内容保存在Documents\NinjaTrader 8\TakeJournal中,并在下次尝试时发送;只要NinjaTrader在运行,就不会丢失任何内容。

从1.1.0版起,插件还会从NinjaTrader自身的历史数据(NinjaTrader所连接的数据源,或它保存的数据)发送您交易图表的K线。它会询问TakeJournal哪些交易还缺K线,并请求每笔交易前后的时间段:从入场前15分钟到离场后15分钟。

  • 最新价的1秒K线,因此MFE和MAE精确到秒。NinjaTrader根据数据源的逐笔历史构建它们;数据源不保留那么久远的逐笔数据时,插件发送1分钟K线,MFE和MAE精确到分钟。
  • 交易期间NinjaTrader无需运行:过去交易的时间段会在它下次连接数据源运行时补齐。历史能追溯多远取决于数据源;没有任何数据的时间段将没有图表。
  • 仅当NinjaTrader连接真实数据源时才会请求,连接模拟数据或Market Replay时不会。
  • 1.0.0版的插件不发送K线:请在连接卡片上重新下载,并覆盖旧版本导入。

从1.2.0版起,插件还会发送你账户的持仓:在NinjaTrader启动或账户连接时、每批成交之后、持仓变化时,以及每五分钟一次。TakeJournal会把它们与你的成交得出的持仓进行比较。如果NinjaTrader没有持仓或持有另一个持仓,而日志仍认为有一笔交易未平仓,就说明发生了一次插件从未收到的平仓:

  • 该交易会在NinjaTrader持仓显示的位置无出场价平仓:出场价和结果未知(?(缺少平仓)),因此不计入你的统计、日历和Spotter,新的成交也永远不会与它配对。否则,下一笔买入会平掉你遗忘的空头,留下一个错误的持仓。
  • 交易页面、账户和连接卡片都会显示这一点,缺少平仓类提醒会出现在账户页面,并发送到开启通知的设备和电子邮件;可在个人资料 → 通知中关闭。
  • 差异从第二次报告起才计算,因此仍在途中的成交不会触发任何操作。

在交易页面手动修正:

  • 添加平仓成交:方向、数量、价格和时间;交易随之以结果平仓。
  • 重新导入成交:在那里选择当天的NinjaTrader成交记录导出(Trade Performance → Executions → Export),只会添加TakeJournal缺少的成交。
  • 无出场价平仓:交易保持无出场价平仓并不计入统计;提醒结束。

如果持仓的差异无法用任何缺少的平仓来解释(NinjaTrader做多3,日志做多1),TakeJournal不会更改任何交易:未平仓交易的页面会显示双方各自的持仓,缺少的成交可以用同样的方式添加或重新导入。1.2.0版之前的插件不发送持仓:请在连接卡片上重新下载,并覆盖导入旧版本。

NinjaTrader 只向插件显示当前交易时段。安装插件之前的成交,或 NinjaTrader 关闭时经纪商仍成交的订单,通过 NinjaTrader 的成交记录导出导入:此连接账户上的导入交易只接受该文件,连接页面上的导入文件会按账户号码找到账户,交易页面也提供重新导入成交。只会添加 TakeJournal 缺少的成交;账户的导入记录卡片会列出这次导入并可撤销。

NinjaTrader 8:导入成交 · Tradovate和NinjaTrader网页版 · 经纪商与导入