当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript exprEnv.ExprEnv类代码示例

本文整理汇总了TypeScript中src/exprEnv.ExprEnv的典型用法代码示例。如果您正苦于以下问题:TypeScript ExprEnv类的具体用法?TypeScript ExprEnv怎么用?TypeScript ExprEnv使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了ExprEnv类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: calcResult

 calcResult(index: number, resultA: number) {
   if (this._range == 0)
     return NaN;
   var first = ExprEnv.get().getFirstIndex();
   if (first < 0)
     return resultA;
   if (index > first) {
     var prev = this._buf[index - 1];
     return this._alpha * (resultA - prev.result) + prev.result;
   }
   return resultA;
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:12,代码来源:EmaExpr.ts

示例2: execute

 execute(ds, index) {
   if (index < 0)
     return;
   this._exprEnv.setDataSource(ds);
   ExprEnv.set(this._exprEnv);
   try {
     var i, cnt;
     cnt = this._assigns.length;
     for (i = 0; i < cnt; i++) {
       this._assigns[i].assign(index);
     }
     cnt = this._outputs.length;
     for (i = 0; i < cnt; i++) {
       this._outputs[i].assign(index);
     }
     if (this._exprEnv.getFirstIndex() < 0)
       this._exprEnv.setFirstIndex(index);
   } catch (e) {
     if (this._exprEnv.getFirstIndex() >= 0) {
       throw e;
     }
   }
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:23,代码来源:Indicator.ts

示例3: calcResult

 calcResult(index, resultA) {
   if (this._range == 0)
     return NaN;
   var first = ExprEnv.get().getFirstIndex();
   if (first < 0)
     return resultA;
   if (index > first) {
     var n = this._range;
     if (n > index + 1 - first)
       n = index + 1 - first;
     return ((n - 1) * this._buf[index - 1].result + resultA * this._mul) / n;
   }
   return resultA;
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:14,代码来源:SmaExpr.ts

示例4: calcResult

 calcResult(index: number, resultA: number) {
   var first = ExprEnv.get().getFirstIndex()
   if (first < 0)
     return resultA;
   if (index > first) {
     var n = this._range;
     if (n == 0 || n >= index + 1 - first) {
       return this._buf[index - 1].result + resultA;
     }
     return this._buf[index - 1].result + resultA - this._buf[index - n].resultA;
   } else {
     return resultA;
   }
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:14,代码来源:SumExpr.ts

示例5: calcResult

 calcResult(index, resultA) {
   var first = ExprEnv.get().getFirstIndex()
   if (first < 0)
     return resultA;
   if (index > first) {
     var n = this._range;
     var prev = this._buf[index - 1];
     if (n >= index + 1 - first) {
       n = index + 1 - first;
       return prev.result * (1.0 - 1.0 / n) + (resultA / n);
     }
     return this._alpha * (resultA - prev.result) + prev.result;
   }
   return resultA;
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:15,代码来源:ExpmemaExpr.ts

示例6: calcResult

 calcResult(index: number, resultA: number) {
   if (this._range == 0)
     return NaN;
   var first = ExprEnv.get().getFirstIndex();
   if (first < 0)
     return resultA;
   if (index > first) {
     var n = this._range;
     if (n >= index + 1 - first) {
       n = index + 1 - first;
       return this._buf[index - 1].result * (1.0 - 1.0 / n) + (resultA / n);
     }
     return this._buf[index - 1].result + (resultA - this._buf[index - n].resultA) / n;
   } else {
     return resultA;
   }
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:17,代码来源:MaExpr.ts

示例7: calcResult

 calcResult(index: number, resultA: number) {
   if (this._range == 0)
     return NaN;
   var first = ExprEnv.get().getFirstIndex();
   if (first < 0)
     return 0;
   if (index >= first) {
     var n = this._range - 1;
     if (n > index - first)
       n = index - first;
     var count = 0;
     for (; n >= 0; n--) {
       if (this._buf[index - n].resultA != 0.0)
         count++;
     }
     return count;
   } else {
     return 0;
   }
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:20,代码来源:CountExpr.ts

示例8: calcResult

 calcResult(index: number, resultA: number) {
   if (this._range == 0)
     return NaN;
   var first = ExprEnv.get().getFirstIndex();
   if (first < 0)
     return resultA;
   if (index > first) {
     var n = this._range;
     var result = resultA;
     var start = index - n + 1;
     var i = Math.max(first, start);
     for (; i < index; i++) {
       var p = this._buf[i];
       if (result < p.resultA)
         result = p.resultA;
     }
     return result;
   } else {
     return resultA;
   }
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:21,代码来源:HhvExpr.ts

示例9: execute

 execute(index) {
   return ExprEnv.get().getDataSource().getDataAt(index).low
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:3,代码来源:LowExpr.ts

示例10: clear

 clear() {
   this._exprEnv.setFirstIndex(-1);
   var i, cnt;
   cnt = this._assigns.length;
   for (i = 0; i < cnt; i++) {
     this._assigns[i].clear();
   }
   cnt = this._outputs.length;
   for (i = 0; i < cnt; i++) {
     this._outputs[i].clear();
   }
 }
开发者ID:WaiSiuKei,项目名称:finscript,代码行数:12,代码来源:Indicator.ts


注:本文中的src/exprEnv.ExprEnv类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。