
等级: 专业版
- 注册:
- 2021-5-20
- 曾用名:
|
PEL公式
==================================================
DIFF : EMA(CLOSE,S) - EMA(CLOSE,P);
DEA : EMA(DIFF,M);
MACD1 : 2*(DIFF-DEA);
MACD1HHV : HHV(MACD1,PH);
MACD1LLV : LLV(MACD1,PL);
MHHV : HHV(HIGH,PH);
MLLV : LLV(LOW,PL);
MCLOSE : CLOSE;
MA1:MA(CLOSE,20);
MA2:MA(CLOSE,68);
MA3:MA(CLOSE,233);
================================================
C++ 部分
STKINDIEX_EXTFUN_ST stFormulaData = { 0 };
stFormulaData.m_nMarket = 'QD';
strcpy(stFormulaData.m_szLabel, "JM01");
strcpy(stFormulaData.m_szIndiName, "MYCOMPLEX.MCLOSE(26,52,18,120,120)");
stFormulaData.m_nPeriod = MIN1_DATA;//1分钟线
stFormulaData.m_nDataNum = un; //调用最近20周期数据
stFormulaData.m_nPower = 1; //复权数据
stFormulaData.m_nRunID = 0;
STKINDIEX_EXTFUN_DATA_RET* pRetData = (STKINDIEX_EXTFUN_DATA_RET*)g_pMainFormework->ExpandFunction(&stFormulaData, STKINDIEX_EXTFUN);
for (int i = pRetData->m_nDataCount-5; i < pRetData->m_nDataCount; i++)
{
COleDateTime time = pRetData->m_pValues[i].m_timeDate;
std::string str_timeDate = time.Format("%Y-%m-%d %H:%M:%S");
std::string str_fOpen = std::to_string(pRetData->m_pValues[i].m_dbValues);
std::string str_Label(stFormulaData.m_szLabel);
std::string str_Market = "DQ";
std::string input = str_cmd + "," + str_Market + "," + str_Label + "," + str_cyc + "," + str_timeDate + "," + str_fOpen;
CString cstrResult(input.c_str());
LOG_DEBUG_INFO("c:\\MyData.txt", "input: %s", cstrResult);
}
=======================================
打印结果:
2025-11-04 18:15:02.018 input: 0-DQ-JM01-1-MCLOSE-200-1=mclose,DQ,JM01,1,2025-11-04 14:56:00,1334.180176
2025-11-04 18:15:02.033 input: 0-DQ-JM01-1-MCLOSE-200-1=mclose,DQ,JM01,1,2025-11-04 14:57:00,1334.180176
2025-11-04 18:15:02.050 input: 0-DQ-JM01-1-MCLOSE-200-1=mclose,DQ,JM01,1,2025-11-04 14:58:00,1333.649170
2025-11-04 18:15:02.061 input: 0-DQ-JM01-1-MCLOSE-200-1=mclose,DQ,JM01,1,2025-11-04 14:59:00,1334.711426
2025-11-04 18:15:02.065 input: 0-DQ-JM01-1-MCLOSE-200-1=mclose,DQ,JM01,1,2025-11-04 15:00:00,1337.374512
实际上焦煤JM01的2025-11-04 15:00:00 收盘价是1253.0;
|
-
|