欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 示例dll函数不能正常显示效果

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有5296人关注过本帖树形打印复制链接

主题:示例dll函数不能正常显示效果

帅哥哟,离线,有人找我吗?
xugjniu
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2017/12/7 11:06:34
示例dll函数不能正常显示效果  发帖心情 Post By:2017/12/7 11:22:53    Post IP:180.173.155.72[显示全部帖子]

请教,

我使用软件自带的DLL示例,形成DLL文件,然后放入到软件下面目录的FmlDLL文件夹中,然后在软件中编辑指标,输入:D:"STOCKFUNC@MYMACLOSE"(5);主图叠加,序列计算。编译成功,双击这个指标后,主图上没有出现5日均线,怎么回事?


 回到顶部
帅哥哟,离线,有人找我吗?
xugjniu
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2017/12/7 11:06:34
  发帖心情 Post By:2017/12/7 13:33:40    Post IP:180.173.155.72[显示全部帖子]

您说到的几个问题

1、运行模式里面,return 1是注释掉的,也就是序列模式,这个示例就是这样,原封不动,都没有改

2、金字塔是32位的,编译器是mingw32-g++,是32位的

不知道是什么问题


 回到顶部
帅哥哟,离线,有人找我吗?
xugjniu
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2017/12/7 11:06:34
  发帖心情 Post By:2017/12/7 13:52:33    Post IP:180.173.155.72[显示全部帖子]

搞定了,的确是编译器的问题,我之前使用的是code blocks的编译器,换成vc++的编译器搞定,谢谢。

 回到顶部
帅哥哟,离线,有人找我吗?
xugjniu
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2017/12/7 11:06:34
  发帖心情 Post By:2017/12/7 16:22:48    Post IP:180.173.155.72[显示全部帖子]

示例里面的return nPeriod-1;和 return -1;有什么特别的意义吗?

以下是示例

__declspec(dllexport) int WINAPI MYMACLOSE(CALCINFO* pData)
{
 if ( pData->m_pfParam1 &&    //参数1有效
   pData->m_nParam1Start<0 &&   //参数1为常数
   pData->m_pfParam2==NULL )   //仅有一个参数
 {
  float fParam = *pData->m_pfParam1;
  int nPeriod = (int)fParam;   //参数1
  if(nPeriod>0)
  {
   float fTotal;
   int i, j;
   for ( i = nPeriod-1; i < pData->m_nNumData; i++ )//计算nPeriod周期的均线,数据从nPeriod-1开始有效
   {
    fTotal = 0.0f;
    for ( j = 0; j < nPeriod; j++ )    //累加
     fTotal += pData->m_pData[i-j].m_fClose;
    pData->m_pResultBuf[i] = fTotal/nPeriod; //平均
   }
   return nPeriod-1;
  }
 }

 return -1;
}


 回到顶部