8
Follow
1370
Followers
차트 템플릿이 업그레이드되었습니다!
-
상태 탭 테이블을 편리하게 사용하기 위해, 표시되는 데이터를 더 체계적으로 만듭니다. 차트 템플릿에 새로운 기능이 추가되었습니다. 정책 상태 탭에 정보를 표시 할 수 있습니다. 새로운 학생은 상태 탭 테이블 객체를 구성 할 필요가 없습니다.
먼저 추가된 출력 함수와 설명서를 작성해 보겠습니다.
- TV // 글로벌 객체, 이 글로벌 객체는 표의 표시 내용을 관리하고, 표의 내용을 수정하는 책임을 맡는다.
- $.TableInit = function ((cols,rows) // 이 출력 함수는 상태 <unk> 테이블을 초기화하기 위해 사용되며 cols = 를 선언하기 전에 사용된다.[값],rows = [숫자], 그리고 변수를 전달한다. cols//columns,rows//rows. 자동으로 테이블을 생성한다. 그리고 TV 객체를 반환하여 템플릿을 참조하는 정책에 데이터를 작성한다.
- $.UpdateLogStatus = function() // 이 내보내기 함수는 상태 <unk> 테이블을 업데이트하기 위한 것이다. 예를 들어:var table = $.TableInit(6,5); 실행 후 table.a0 = "aaaa"; 그리고 다시 내보내기 함수:$.UpdateLogStatus() 를 호출하면, "aaaa"를 a 열, 0 행으로 업데이트할 수 있다.
- cols,rows를 잘 설정한 후 테이블 좌표는 대략 다음과 같다. 사용 시 table.a0에 직접 접속하면 var table = $.TableInit (6,5); ) 를 호출한 뒤 다음과 같은 테이블의 a0 위치에 쓸 수 있다. 열 수는 최대 "z"까지다.
- 참고: 표 머리, 즉 좌표 a0,b0,c0...의 셀 (표 머리)[이 문제는 수정되었고, 표의 데이터 내용은 동일할 수 있습니다.]
| a | b | c | d | ... | |
|---|---|---|---|---|---|
| 0 | a0 | ||||
| 1 | b1 | ||||
| 2 | d2 | ||||
| 3 | c3 | ||||
| 4 | |||||
| 5 | |||||
| 6 | |||||
| 7 | |||||
| 8 |
- 다음은 템플릿의 main 함수 테스트 코드입니다:
//测试状态栏表格功能
var cols = 6;//列
var rows = 4;//行
$.TableInit(cols,rows);
- 다음 기능들을 계속 테스트해 보세요:
/*测试状态栏表格功能*/
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();//更新 状态栏表格

테이블 헤더에서 개별적으로 작성된 데이터를 제외하면, 다른 셀들은 "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();//再次更新 状态栏表格
//*/
템플릿 내부의 테스트입니다. 아래는 템플릿을 참조하는 전략에서 템플릿 기능을 테스트하세요:
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();
}
Related Recommendations
Comment
All comments (16)
回测正常,但模拟盘中却报错:
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
- 1




