您現在的位置:程序化交易>> 期貨公式>> 金字塔等>> 金字塔知識>>正文內容

[求助]求救DLL,求金大神指點 [金字塔]

  • 咨詢內容: TCore::TCore( CALCINFO* pData,int x){   if ( pData->m_pfParam1 &&  pData->m_nParam1Start<0 && //參數1有效且為常數     pData->m_pfParam2 &&     pData->m_pfParam3 &&     pData->m_pfParam4)  {  float fParam = *pData->m_pfParam1;  slow= (int)fParam;  float fParam1 = *pData->m_pfParam2;  fast= (int)fParam1;  float fParam2 = *pData->m_pfParam3;  Mid= (int)fParam2;  float fParam3 = *pData->m_pfParam4;  MaSelect= (int)fParam3;  }       //數組初始化     DataLen=pData->m_nNumData;      int realLen=DataLen+10;  H.resize(realLen,0);  L.resize(realLen,0);  MidHL.resize(realLen,0);      RstArray.resize(realLen,0);  BL=6;
     B.resize(realLen,0);  D.resize(realLen,0);  Macd.resize(realLen,0);  Diff.resize(realLen,0);  Dea.resize(realLen,0);

     HB.resize(realLen,0);  HD.resize(realLen,0);  HMacd.resize(realLen,0);  HDiff.resize(realLen,0);  HDea.resize(realLen,0);
     HHB.resize(realLen,0);  HHD.resize(realLen,0);  HHMacd.resize(realLen,0);  HHDiff.resize(realLen,0);  HHDea.resize(realLen,0);
     //----------------------數組初始化       switch (MaSelect)  {  case 1:   {  initEmaData(pData,x);   };  case 2:;  case 3:;  default:;  }

    init emaData

    void TCore::initEmaData( CALCINFO* pData,int x){ float factorB=2.0f/(fast+1.0f); float factorD=2.0f/(slow+1.0f); float factorHB=2.0f/(fast*BL+1.0f); float factorHD=2.0f/(slow*BL+1.0f); float factorHHB=2.0f/(fast*BL*BL+1.0f); float factorHHD=2.0f/(slow*BL*BL+1.0f);
    for(int i=0;i<DataLen;i++) { RstArray[i]=0;//類成員,臨時結果緩存
    H[i]=(pData->m_pData[i].m_fHigh); L[i]=(pData->m_pData[i].m_fLow);

    MidHL[i]=(H[i]+L[i])*0.5f;

    if(i==0) { B[i]=MidHL[0]; D[i]=MidHL[0]; Diff[i]=B[i]-D[i]; Dea[i]=Diff[i];
    HB[i]=MidHL[0]; HD[i]=MidHL[0]; HDiff[i]=HB[i]-HD[i]; HDea[i]=HDiff[i];
    HHB[i]=MidHL[0]; HHD[i]=MidHL[0]; HHDiff[i]=HHB[i]-HHD[i]; HHDea[i]=HHDiff[i]; } else {       float A=MidHL[i]; B[i]=B[i-1]+factorB*(A-B[i-1]); D[i]=D[i-1]+factorD*(A-D[i-1]); Diff[i]=B[i]-D[i]; float factorDea=2.0f/(Mid+1.0f); Dea[i]=Dea[i-1]+factorDea*(Diff[i]-Dea[i-1]); Macd[i]=2.0f*(Diff[i]-Dea[i]);
    HB[i]=HB[i-1]+factorHB*(A-HB[i-1]); HD[i]=HD[i-1]+factorHD*(A-HD[i-1]); HDiff[i]=HB[i]-HD[i]; float factorHDea=2.0f/(Mid*BL+1.0f); HDea[i]=HDea[i-1]+factorHDea*(HDiff[i]-HDea[i-1]); HMacd[i]=2.0f*(HDiff[i]-HDea[i]);
    HHB[i]=HHB[i-1]+factorHHB*(A-HHB[i-1]); HHD[i]=HHD[i-1]+factorHHD*(A-HHD[i-1]); HHDiff[i]=HHB[i]-HHD[i]; float factorHHDea=2.0f/(Mid*BL*BL+1.0f); HHDea[i]=HHDea[i-1]+factorHHDea*(HHDiff[i]-HHDea[i-1]); HHMacd[i]=2.0f*(HHDiff[i]-HHDea[i]); } }

    if(x==-1) { for(int i=0;i<DataLen;i++) { L[i]=(100000-pData->m_pData[i].m_fHigh); H[i]=(100000-pData->m_pData[i].m_fLow);
    Diff[i]=-1*Diff[i]; Dea[i]=-1*Dea[i]; Macd[i]=-1*Macd[i];
    HDiff[i]=-1*HDiff[i]; HDea[i]=-1*HDea[i]; HMacd[i]=-1*HMacd[i];
    HHDiff[i]=-1*HHDiff[i]; HHDea[i]=-1*HHDea[i]; HHMacd[i]=-1*HHMacd[i]; } }


    extern "C" __declspec(dllexport) int WINAPI OPSUP(CALCINFO* pData){   TCore Core(pData,1);   Core.CalCore();   for(int m=0;m<pData->m_nNumData;m++)   {   pData->m_pResultBuf[m] =Core.L[m];   }   return 0;  Core.~TCore();
    return -1;  }

    為什么core.L賦值每間隔幾根就會不賦值,求金字塔大神解救!多謝!

     

  • 金字塔客服:

    有經驗的編程人員會利用寫文件日志的方式來調試你自己的代碼

     

  • 用戶回復: 那你能幫我看下,為什么會賦值有間隔?謝了

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 1145508240  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 熟妇人妻一区二区三区四区 | 男人都懂的网址在线看片 | 91嫩草私人成人亚洲影院| 成人中文精品3d动漫在线| 久久精品人妻中文系列| 欧美性视频18~19| 人人添人人澡人人澡人人人人| 美女脱精光给男生摸| 国产伦理一区二区| 国产成人yy免费视频| 国产精品99在线观看| 91亚洲国产在人线播放午夜| 夜色www国产精品资源站| 一本久道中文无码字幕av| 无码AV中文一区二区三区| 久久国产精品电影| 曰批全过程免费视频在线观看无码 | 亚洲激情综合网| 国产精品成人va在线播放| 91青青青国产在观免费影视| 大地资源视频在线观看| 一区二区高清视频在线观看| 成人欧美一区二区三区小说| 久久久久成人精品无码| 日韩一区二区三| 久别的草原电视剧免费观看| 欧美xxxxbbb| 亚洲中文字幕无码专区| 欧美卡一卡2卡三卡4卡在线| 亚洲导航深夜福利| 欧美日韩一区二区三区麻豆| 亚洲欧美日韩一级特黄在线| 波多野结衣中文字幕一区二区三区 | 亚洲午夜无码久久久久| 欧美日本在线观看| 亚洲欧洲在线观看| 欧美色图你懂的| 亚洲精品中文字幕乱码影院| 波多野结衣种子网盘| 人与禽交另类网站视频| 玉蒲团之天下第一|