全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
怎么表达最高价
gkgz7777 分享到
2024-08-02 23:44

老师您好  怎么表达  10根K线中最高价前5的5根K线  他们最高价平均值 谢谢

kyover

这个算法应该不是很简单

2024-08-03 07:47
YYYZ_TB

//------------------------------------------------------------------------

// 简称: TEST_20240809220654

// 名称: 测试

// 类别: 公式应用

// 类型: 用户应用

// 输出: Void

//------------------------------------------------------------------------

/*

怎么表达  10根K线中最高价前5的5根K线  他们最高价平均值

---

先定位N(10根K线最高价的位置),N= Nthcon(H,10,1);然后H1 = MA(h,5); h5 =h1[n+1],试试看

*/

Params

//此处添加参数

Vars

//此处添加变量

Series<Numeric> H1;

Array<Numeric> arr;


Defs

//此处添加公式函数

Events

//此处实现事件函数

//初始化事件函数,策略运行期间,首先运行且只有一次

OnInit()

{

}



//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组

OnBar(ArrayRef<Integer> indexs)

{

Numeric N = NthHigher(H, 10, 1);

H1 = MA(H, 5);

Numeric H5 = H1[N+1];

Integer i;

For i=0 to 10-1

{

arr[i] = H[i];

}

Commentary(TextArray(arr));        

       

       ArraySort(arr, False);//数组降序排序

       Commentary(\"降序排序结果:\" + TextArray(arr));

       

       Numeric sumv = 0;

For i=0 to 5-1

{

sumv = sumv + arr[i];

}

sumv = sumv / 5;

Commentary(TextArray(arr));

Commentary(TextArray(arr));

PlotNumeric(\"sumv\", sumv);

}



//------------------------------------------------------------------------

// 编译版本 2024/08/09 220713

// 版权所有 yyyz_tb

// 更改声明 TradeBlazer Software保留对TradeBlazer平台

// 每一版本的TradeBlazer公式修改和重写的权利

//------------------------------------------------------------------------

2024-08-09 22:56
YYYZ_TB

数组的解法,还有一种解法是  “循环:第12345高(有函数)求平均就可以了”

2024-08-09 22:56
gkgz7777

谢谢 辛苦了!

2024-08-09 23:57
您未登录,请先 登录注册 后发表评论
顶部