Type/to search
8
Follow
1370
Followers
チャートテンプレートがアップグレードされました!
Tutorials
Created 2016-07-26 09:47:34  Updated 2017-10-11 10:20:34
 16
 4934

チャートテンプレートがアップグレードされました!

  • ステータス欄の表を使用し,表示されたデータをより規則的に表示するために.図のテンプレートを追加した新しい機能. 方針ステータス欄に情報を表示するカスタム機能. 新しい同級生は,ステータス欄の表オブジェクトを設定する必要はありません.

    追加された出力関数と説明を書きましょう.
    • TV // 全局オブジェクト,この全局オブジェクトは,表の表示内容を管理し,表の変更内容を担当する. (これは,テンプレート内の全局変数であり,テンプレートのポリシーにアクセスできません)
    • $.TableInit = function ((cols,rows) //は, cols = を宣言する前の状態列の表を初期化するために使われます.[文字列は,文字列が,文字列が[数値]で,変数参数。cols//columns,rows//rows。を入力すると,表は自動的に生成され。TVオブジェクトが返され,テンプレートを参照する策略でデータに書き込まれる。
    • $.UpdateLogStatus = function ((() //という出力関数は,状態欄の表を更新するために使用されるものです. 例えば:var table = $.TableInit (((6,5);実行後,table.a0 = "aaaa";そして,出力関数:$.UpdateLogStatus ((() を呼び出すと,a列,0行に"aaaa"を更新することができます.
    • cols,rows を設定した後,表の座標はおそらくこうである. table.a0 を直接アクセスする際には, var table = $.TableInit (6,5) を呼び出すことが前提である. ) は,以下の表の a0 位置に書き込むことができる. 列数は最大で "z" になる.
    • 注意:表の頭は,a0,b0,c0...の座標のセル (表頭) である[この問題は修正され,表のデータも同じになります.
abcd...
0a0
1b1
2d2
3c3
4
5
6
7
8

img

  • テンプレート内の main 機能のテストコードは以下の通りです.
//测试状态栏表格功能 var cols = 6;//列 var rows = 4;//行 $.TableInit(cols,rows);

img

  • 機能のテストを続けてください.
/*测试状态栏表格功能*/ var cols = 6;//列 设置一个变量 代表 列 var rows = 4;//行 设置一个变量 代表 行 $.TableInit(cols,rows); //初始化 状态栏 会显示 各个单元格的 坐标 ///* for(var x in TV){ TV[x] = "lalala";// 全部单元格写成 lalala } //更新表格 显示 lalala, 表头 数据不能重复 ,否则显示不出来。 TV.a0 = "a0"; TV.b0 = "b0"; TV.c0 = "c0"; TV.d0 = "d0"; TV.e0 = "e0"; TV.f0 = "f0";//先把 表头数据写成不一样的 $.UpdateLogStatus();//更新 状态栏表格

img
表題のデータ以外は,他のすべてのセルに"lalala"という文字列が書かれています.

  • 文字列にしか書き込めないでしょうか? 試しに,数列,数値,オブジェクト,テキスト,
/*测试状态栏表格功能*/ var cols = 6;//列 设置一个变量 代表 列 var rows = 4;//行 设置一个变量 代表 行 $.TableInit(cols,rows); //初始化 状态栏 会显示 各个单元格的 坐标 ///* for(var x in TV){ TV[x] = "lalala";// 全部单元格写成 lalala } //更新表格 显示 lalala, 表头 数据不能重复 ,否则显示不出来。 TV.a0 = "a0"; TV.b0 = "b0"; TV.c0 = "c0"; TV.d0 = "d0"; TV.e0 = "e0"; TV.f0 = "f0";//先把 表头数据写成不一样的 $.UpdateLogStatus();//更新 状态栏表格 ///* //怎么在 表格里面写入数据呢? var num = 100; var text = "文本:测试表格文本"; var obj = {name:"对象",age:"19",sex:"girl"}; var array = ["数组",22,33,54]; TV.a1 = num; TV.c2 = text; TV.b3 = obj; TV.b0 = array; $.UpdateLogStatus();//再次更新 状态栏表格 //*/

img

テンプレート内のテストです. テンプレートの機能は,テンプレートを引用する戦略でテストできます.
function main(){ var i = 0; var table = $.TableInit(4,5); for(var x in table){//向表格写入数据 table[x] = "" + i;// 全部单元格写成 递增的数字 i++; } //更新表格 显示 递增的数字, 表头 数据不能重复 ,否则显示不出来。 table.a0 = "a0"; table.b0 = "b0"; table.c0 = "c0"; table.d0 = "d0"; table.a1 = "a1"; table.b1 = "b1"; table.c1 = "c1"; table.d1 = "d1"; table.a4 = "a4"; table.b4 = "b4"; table.c4 = "c4"; table.d4 = "d4"; //Log("TV:",TV);//测试是否能 访问到模板中的TV 对象 $.UpdateLogStatus(); }

img
この機能は一時的に更新されましたので,皆さんに試しにご利用いただき,BUGがあれば,投稿でコメントしてください。^^

Related Recommendations
Comment
All comments (16)

    请问,报错TypeError: $.UpdateLogStatus is not a function是怎么回事?

    8 years ago

    策略引用了这个模板了么?

    8 years ago

    反复重试了几遍,已经解决了,感谢梦总。

    8 years ago

    点击复制并在线回测按钮复制的策略模板,然后我在自己的策略中也引用了这个模板,但是跑数据,仍然报错:TypeError: undefined not callable (property 'TableInit' of [object Object]) at main (FILE:315)

    8 years ago

    看下 main 函数 315行 处的代码, 是不是 函数名字写错了。

    8 years ago

    回测正常,但模拟盘中却报错:

    ReferenceError: identifier 'indicatorsName' undefined at [anon] (__FILE__:1388) at global (__FILE__:1694) preventsyield

    8 years ago

    测试了一下 ,可以的 ,您这个报错 我推测:
    您是不是 直接复制的代码 在新建策略里面了, 这个模板有一些界面参数的。如果是只复制代码 ,这些参数 就需要手动配置下。
    模板是这个帖子:https://www.botvs.com/strategy/20967
    需要点击下面的 复制按钮。

    8 years ago

    我是通过点击复制并在线回测按钮复制的策略模板,然后我在自己的策略中也引用了这个模板,策略参数是正常显示的。

    回测结果正常,然后我新建了一个机器人 B 测试也是正常的,证明策略本身没有问题。但不知道为何,就是在机器人 A 上会报错,两个机器人的配置也都一样,甚是诡异。

    8 years ago

    报错 看来 应该 是 indicatorsName 这个 参数 的问题 。这个参数 是个 界面参数 。
    这样 , 您再 复制 一次 这个策略 用新复制的 创建个 机器人 跑下,看是否还报错。

    8 years ago

    用新策略运行, 提示 main:3:19 - TypeError: $.TableInit is not a function 用法不对吗?
    引用模板测试是怎么样引用法?

    9 years ago

    要在策略里 勾选这模版的, 另外这个 模版是 JS语言 ,如果 您用python 写策略, 即使复制这个模版到 您的 控制中心 , 也是无法看到 ,无法引用的(就是勾选)。

    9 years ago

    $.UpDateLogStatus();
    这个函数命名有点问题。 update是一个单词,D不能大写。

    10 years ago

    ^ ^前辈指点的是,这样写外行了~~改下。

    10 years ago

    小梦 辛苦

    10 years ago

    方便大家用就好 ^^

    10 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)