搜索
查看: 56758|回复: 33

[大盘交流] 有没有Expma达人?expma和均线到底有什么区别?

[复制链接]
发表于 2011-2-5 19:22 | 显示全部楼层

有没有Expma达人?expma和均线到底有什么区别?

来自:MACD论坛(bbs.shudaoyoufang.com) 作者:henryjin 浏览:56758 回复:33

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
有达人能指点迷津么?谢谢!
金币:
奖励:
热心:
注册时间:
2007-7-5

回复 使用道具 举报

发表于 2011-2-5 19:41 | 显示全部楼层
搜百度知道吧!
金币:
奖励:
热心:
注册时间:
2011-1-18

回复 使用道具 举报

发表于 2011-2-5 20:05 | 显示全部楼层
过年了,给你发一下,我在公式中是如何计算实现ma,ema,sma三者的,结果与软件中显示的一样,见下面:
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:05 | 显示全部楼层
/////////////////////////////////////////////////////////////////////////////////////////
//jaofunc.c:飞狐交易师"C语言接口"公用函数内容文件1->程序体部分
/////////////////////////////////////////////////////////////////////////////////////////

//========================================================================================================================
//jf_llv: 计算简单移动最小值(数组,起始,结束,周期,结果)
//        Y=MIN(X,N)=MIN(X1+X2+...+Xn),N>0
int jf_llv(const float* x,int b,int e,int n,float* y)
{
  for(int i=b; i<=e; i++)
  {
    int j=i-1; float r=x; int s=1;
    while(j>=b)
    {
      s++;
      if(s<=n){ if(x[j]<r) r=x[j]; } else break;
      j=j-1;
    }
    y=r;
  }
  return 1;
}
//========================================================================================================================
//jf_hhv: 计算简单移动最大值(数组,起始,结束,周期,结果)
//        Y=MAX(X,N)=MAX(X1+X2+...+Xn),N>0
int jf_hhv(const float* x,int b,int e,int n,float* y)
{
  for(int i=b; i<=e; i++)
  {
    int j=i-1; float r=x; int s=1;
    while(j>=b)
    {
      s++;
      if(s<=n){ if(x[j]>r) r=x[j]; } else break;
      j=j-1;
    }
    y=r;
  }
  return 1;
}
//========================================================================================================================
//jf_ma: 计算简单移动平均值(数组,起始,结束,周期,结果)
//       Y=MA(X,N)=(X1+X2+...+Xn)/N,N>0
int jf_ma(const float* x,int b,int e,int n,float* y)
{
  float r=0.00; int s=0;
  for(int i=b; i<=e; i++)
  {
    r=r+x;
    if(s<n) s++; else r=r-x[i-s];
    y=r/s;
  }
  return 1;
}
//========================================================================================================================
//jf_sma: 计算加权移动平均值(数组,起始,结束,周期,权重,结果)
//Y=SMA(X,N,M)=(M*X+(N-M)*Y')/N, N>0,N>M,Y'=Yi-1,Y0=X
int jf_sma(const float* x,int b,int e,int n,int m,float* y)
{
  y=x; int z=n-m;
  for(int i=b+1; i<=e; i++)
  {
    y=(m*x+z*y[i-1])/n;
  }
  return 1;
}
//========================================================================================================================
//jf_ema: 计算平滑移动平均值(数组,起始,结束,周期,结果)
//Y=EMA(X,N)=[2*X+(N-1)*Y']/(N+1), N>0,Y'=Yi-1,Y0=X
int jf_ema(const float* x,int b,int e,int n,float* y)
{
  y=x; int z1=n-1,z2=n+1;
  for(int i=b+1; i<=e; i++)
  {
    y=(2*x+z1*y[i-1])/z2;
  }
  return 1;
}

//=======================================================================================
//jf_logic: 逻辑运算子程序
//(a & b | c) | (e & d | f),代码:"&"=2 "|"=3 "!"=4 "("=5 ")"=6
int jf_logic(ID* pId,int s)//s: 1.主逻辑调用,0/非1.非逻辑调用
{
  //-------------------------------------------------------------------------------------
  //处理:变量声明
  ID* pIe=pId; if(((int)pIe)==0) return 0;//当前链接指针
  ID* pIr; ID* pIt;                       //前后链接指针
  int r=0;                                //计算结果清零
  int o=0;                                //操作符清零
  int f=0;                                //递归调用及返回标志清零

  //-------------------------------------------------------------------------------------
  //处理:逻辑与或非
  pIe=pId;
  while(1)//循环:处理逻辑与或,每处理一次释放当前内存
  {
        pIr=(ID*)pIe->pIr; pIt=(ID*)pIe->pIt;//前后链接指针

        switch(pIe->iDt)//当前数据
        {
          case 0://"0"
          case 1://"1"
          {
                switch(o)
            {
                  case 0:{r=pIe->iDt;     break;}//" "
                  case 3:{r=r & pIe->iDt; break;}//"&"
                  case 4:{r=r | pIe->iDt; break;}//"|"
                  default:{}
                }
                break;
          }
          case 2:
          {
            switch(o)
            {
              case 0:{r=    !jf_logic(pIt,0); break;}//" "
              case 3:{r=r & !jf_logic(pIt,0); break;}//"&"
              case 4:{r=r | !jf_logic(pIt,0); break;}//"|"
              default:{}
            }
                pIt=pIe->pIt; break;//更新向后链接
          }
          case 3:{o=3; break;}//"&"
          case 4:{o=4; break;}//"|"
          case 5://"("
          {
            switch(o)
            {
              case 0:{r=    jf_logic(pIt,1); break;}//" "
              case 3:{r=r & jf_logic(pIt,1); break;}//"&"
              case 4:{r=r | jf_logic(pIt,1); break;}//"|"
              default:{}
            }
                pIt=pIe->pIt; break;//更新向后链接
          }
          case 6:{f=1; break;}//")"
          default:{}
        }
        if(((int)pIr)>0) pIr->pIt=pIt;       //调整前链接
        if(((int)pIt)>0) pIt->pIr=pIr;       //调整后链接
        free(pIe);                           //释放本链接
        if((s!=1) | f) break;                //调试返回处理
        if(((int)pIt)>0) pIe=pIt; else break;//后有内容则向后跳转,否则结束
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

签到天数: 9 天

发表于 2011-2-5 20:06 | 显示全部楼层
原帖由 股民阿甘 于 2011-2-5 20:05 发表
过年了,给你发一下,我在公式中是如何计算实现ma,ema,sma三者的,结果与软件中显示的一样,见下面:

好久不见阿甘斑竹
金币:
奖励:
热心:
注册时间:
2007-12-16

回复 使用道具 举报

发表于 2011-2-5 20:07 | 显示全部楼层
复制多了,筛选一下,重发,下面这个是MA:
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:07 | 显示全部楼层
//========================================================================================================================
//jf_ma: 计算简单移动平均值(数组,起始,结束,周期,结果)
//       Y=MA(X,N)=(X1+X2+...+Xn)/N,N>0
int jf_ma(const float* x,int b,int e,int n,float* y)
{
  float r=0.00; int s=0;
  for(int i=b; i<=e; i++)
  {
    r=r+x;
    if(s<n) s++; else r=r-x[i-s];
    y=r/s;
  }
  return 1;
}
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:07 | 显示全部楼层
下面这个是EMA:
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:08 | 显示全部楼层
//========================================================================================================================
//jf_ema: 计算平滑移动平均值(数组,起始,结束,周期,结果)
//Y=EMA(X,N)=[2*X+(N-1)*Y']/(N+1), N>0,Y'=Yi-1,Y0=X
int jf_ema(const float* x,int b,int e,int n,float* y)
{
  y=x; int z1=n-1,z2=n+1;
  for(int i=b+1; i<=e; i++)
  {
    y=(2*x+z1*y[i-1])/z2;
  }
  return 1;
}
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:08 | 显示全部楼层
已经很清楚了吧,呵呵,别跟我说看不懂啊,这已经是最简单的表达了。
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:10 | 显示全部楼层
原帖由 ID被锁 于 2011-2-5 20:06 发表

好久不见阿甘斑竹

你好,前两年出国了,现在有时间在研究交易系统。
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

签到天数: 9 天

发表于 2011-2-5 20:13 | 显示全部楼层
什么系统交易?让兄弟们也学习学习
金币:
奖励:
热心:
注册时间:
2007-12-16

回复 使用道具 举报

发表于 2011-2-5 20:16 | 显示全部楼层
交易系统简单说列一表,说明一下吧,可能对指路有作用,看下面:不清楚的可以问我,现在。
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:17 | 显示全部楼层
我的系统代码说明:第一级代码
//--------------------
// *.交易系统代码 | *.
//----------------+---
// J.核心公式系统 | A.
// Q.执行公式系统 | B.
// M.资金评测系统 | C.
// R.雷达监控系统 | D.
// A.自动交易系统 | E.
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:19 | 显示全部楼层
二三级代码:
-------------------------------------------------------
| *.交易系统类别                 | *.交易系统波长     |
+--------------------------------+--------------------+
| A.抄底交易系统-+      -+无-+   | O.趋势交易系统-+   |
| B.过度交易系统-|-+     |触 |   | P.波段交易系统 |-+ |
| C.追涨交易系统-|-|-+  -+发 |无 | Q.震荡交易系统-+ | |
| D.选底交易系统-+ | |-+-+   |管 | R.复合交易系统-+ | |
| E.选择交易系统---+-+ | |   |理 |                | | |
| F.全时交易系统#+-----+ |有 |   |                | | |
| G.选涨交易系统*+---+ | |触-+   |                | | |
| H.分级交易系统-+   |-+ |发-+有 |-+--------------|-+ |
| I.日内交易系统-+   |   |   |管 |-+              |   |
| J.分仓交易系统---+-+  -+   |理 |-+--------------+   |
| K.分步交易系统---+        -+   |-+                  |
| .                              |                    |
| .                              |                    |
| .                              |                    |
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:21 | 显示全部楼层
四五级代码:

-----------------------------------------------------
| *.交易系统方向 | *.交易系统版本
-+----------------+---------------------------------------------------------
| 1.多头单向系统 | 1.K 线形态交易系统:不使用任何指标
| 2.空头单向系统 | 2.KDJ 指标交易系统:
| 3.多头双向系统 | 3.MACD指标交易系统:
| 4.空头双向系统 | 4.VOL 指标交易系统:
| 5.多空双向系统 | 5.综合指标交易系统:综合使用三种指标
|                | 6.综合指标交易系统(熊市特别版):
|                | 7.神经网络交易系统:使用人工智能及模糊识别
|                | 8.微观识别交易系统:完善大型数据库存储过程
|                | 9.混沌理论交易系统:探索中...
|                | A.易经六爻交易系统:四柱干支世应用神进退体系
|                | B.奇门遁甲交易系统:奇门置润符使八罡克应体系
|                | C.太乙神术交易系统:探索中...
|                | D.成本分析交易系统:探索中...
|                | E.财务分析交易系统:探索中...
|                | F.综合分析交易系统:探索中...
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:22 | 显示全部楼层
在我这里是整齐的表格,发出来就乱了,没办法,其中各项间含有充分且必要的逻辑关系在内代表着交易设计的思路。
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

发表于 2011-2-5 20:24 | 显示全部楼层
工作量太大,现在业余时间都用在设计试验交易系统上了,呵呵,学无止境啊。
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

签到天数: 59 天

发表于 2011-2-5 20:34 | 显示全部楼层
阿甘,这个系统看上去有点复杂啊,赚钱么?用起来简单么?
金币:
奖励:
热心:
注册时间:
2007-5-29

回复 使用道具 举报

发表于 2011-2-5 20:44 | 显示全部楼层
每一个都是正反馈系统,五个代码各选一个,组合起来,都是一个交易系统,但一些较基础的系统在大盘避免不了大盘回调时的资金回撤问题。
金币:
奖励:
热心:
注册时间:
2005-10-20

回复 使用道具 举报

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

本版积分规则

本站声明:MACD仅提供交流平台,请交流人员遵守法律法规。
值班电话:18209240771   微信:35550268

举报|意见反馈|手机版|MACD俱乐部

GMT+8, 2025-5-18 21:40 , Processed in 0.031430 second(s), 8 queries , MemCached On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表