Шаблон диаграммы был обновлен!
-
Для удобства использования таблицы состояния, чтобы отображаемые данные были более упорядоченными. Шаблоны графиков были добавлены с новой функцией.
Напишите дополнительную функцию экспорта, а также описание.
- TV // глобальный объект, который отвечает за то, что показывается в таблице, а также за то, что изменяется в таблице.
- $.TableInit = function(cols,rows) // Экспортная функция, используемая для инициализации таблицы в строке состояния, может быть использована для объявления cols =[Число],rows = [Цифровая величина], затем передайте параметры .cols//column,rows//row. автоматически генерирует таблицу . и возвращает объекты TV, которые используются для записи данных в стратегии, ссылающейся на шаблон .
- $.UpdateLogStatus = function() // эта функция экспорта используется для обновления таблицы состояния. Например: 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();
}

Это временно обновленная функция, приветствую всех, кто хочет попробовать, если есть ошибки, пожалуйста, оставьте комментарии.
回测正常,但模拟盘中却报错:
ReferenceError: identifier 'indicatorsName' undefined at [anon] (__FILE__:1388) at global (__FILE__:1694) preventsyield
测试了一下 ,可以的 ,您这个报错 我推测:
您是不是 直接复制的代码 在新建策略里面了, 这个模板有一些界面参数的。如果是只复制代码 ,这些参数 就需要手动配置下。
模板是这个帖子:https://www.botvs.com/strategy/20967
需要点击下面的 复制按钮。
我是通过点击复制并在线回测按钮复制的策略模板,然后我在自己的策略中也引用了这个模板,策略参数是正常显示的。
回测结果正常,然后我新建了一个机器人 B 测试也是正常的,证明策略本身没有问题。但不知道为何,就是在机器人 A 上会报错,两个机器人的配置也都一样,甚是诡异。
报错 看来 应该 是 indicatorsName 这个 参数 的问题 。这个参数 是个 界面参数 。
这样 , 您再 复制 一次 这个策略 用新复制的 创建个 机器人 跑下,看是否还报错。
- 1



