楼主: bbhit
4356 1

[源码分享] Stochrsi应该如何计算? [推广有奖]

  • 0关注
  • 0粉丝

初中生

38%

还不是VIP/贵宾

-

威望
0
论坛币
2 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
43 点
帖子
4
精华
0
在线时间
19 小时
注册时间
2018-3-15
最后登录
2018-4-19

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
已经通过RSI函数获得了RSI的值
应该如何获得stochrsi的K、D值?

谢谢
我在网上找了很多公式


  1. LC := REF(CLOSE,1);
  2.                         RSI:=SMA(MAX(CLOSE-LC,0),N,1)/SMA(ABS(CLOSE-LC),N,1) *100;
  3.                         %K:MA(RSI-LLV(RSI,M),P1)/MA(HHV(RSI,M)-LLV(RSI,M),P1)*100;
  4.                         %D:MA(%K,P2);
复制代码
这种公式是某些量化程序的内置公式
现在我要自己写PHP有点看不懂
尝试过这样写
  1. StochRSI($arr['close'],14,9,3,3);

  2. RSI 14
  3. stoch 9
  4. K 3
  5. D 3

  6. 取得9个RSI,计算最大最小
  7. 分别存为数组

  8. 3组计算的值 用来计算一次K值
  9. 3个K值 再计算一个D值


  10. public function StochRSI($data,$p1 = 14,$p2 = 14 ,$n = 3,$m = 3) {
  11.                         //计算RSI
  12.                         $rsi =  array();
  13.                         if (count($data) >= $p1) {
  14.                                 $rsi = trader_rsi($data,$p1);
  15.                         }
  16.                         
  17.                         $rsi = array_values($rsi);//重新以0为递增索引
  18.                         //print_r($rsi);
  19.                         //%K:        MA(RSI-LLV(RSI,14),3)/MA(HHV(RSI,14)-LLV(RSI,14),3) * 100
  20.                         //%D:        MA(%K,3)
  21.                         //print_r($rsi);
  22.                         //循环计算stochrsi
  23.                         
  24.                         $rsi_count = count($rsi);
  25.                         if ($rsi_count >= ($p2 + $n + 1)) {

  26.                                 $icount = $rsi_count - ($p2 + $n +1)
  27.                                 for ($i=$icount; $i < $rsi_count; $i++) {
  28.                                         $tmp[] = $rsi[$i];
  29.                                         if (count($tmp)>=$p2) {
  30.                                                 $min = min($tmp);
  31.                                                 $max = max($tmp);
  32.                                                 $ma1[] = $rsi[$i] - $min;//$rsi[$i] = last rsi
  33.                                                 $ma2[] = $max - $min;
  34.                                                 if (count($ma1)>=$n) {
  35.                                                         $ma3 = end(trader_ma($ma1,$n));
  36.                                                         $ma4 = end(trader_ma($ma2,$n));
  37.                                                         $k = round($ma3 / $ma4 *100,6);
  38.                                                         $stochrsi[] = $k;
  39.                                                         //echo "K:".$k."\n";
  40.                                                         //print_r($stochrsi);
  41.                                                         array_shift($ma1);//保持相应的记录数量
  42.                                                         array_shift($ma2);//保持相应的记录数量
  43.                                                         if (count($stochrsi)>=$m) {
  44.                                                                 $d = end(trader_ma($stochrsi,$m));
  45.                                                                 //echo "D:".$d."\n";
  46.                                                                 return [$k,$d];
  47.                                                         }
  48.                                                 }
  49.                                                 array_shift($tmp);//保持相应的记录数量
  50.                                         }
  51.                                 }
  52.                         }
  53.                         

  54.                 }
复制代码
代码中的:trader_rsi 、trader_ma分别是php trader插件函数

计算出RSI

谁能帮忙解释一下?

谢谢

或者有没有适用PHP的金融指标插件函数?感谢


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:stoc och hrs CHR sto

沙发
xugonglei 发表于 2018-3-20 16:54:05 |只看作者 |坛友微信交流群
不懂php,帮顶。

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jr
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-24 09:54