91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4.74MB
    文件類型: .rar
    金幣: 2
    下載: 3 次
    發(fā)布日期: 2021-04-05
  • 語言: 其他
  • 標(biāo)簽: 通達(dá)信DLL??

資源簡介

通達(dá)信提供了DLL插件接口和DLL指標(biāo)接口標(biāo)準(zhǔn)(見“插件編程規(guī)范-通達(dá)信原版文件”),但說明晦澀,不容易理解。 經(jīng)過測試,將原示例代碼做了注釋,并修正了原來代碼的一處錯(cuò)誤(主要見MyPlugin.cpp)。 只要明白了道理,剩下的工作就看個(gè)人發(fā)揮了!

資源截圖

代碼片段和文件信息

//?MyPlugin.cpp?:?通達(dá)信行情軟件插件選股代碼示例,根據(jù)通達(dá)信官方模板改編。


#include?“stdafx.h“
#include?“Plugin.h“

#define?PLUGIN_EXPORTS

//本函數(shù)DllMain供調(diào)用此DLL的應(yīng)用程序使用,不可更改,必須保留。
BOOL?APIENTRY?DllMain(?HANDLE?hModule?DWORD??ul_reason_for_call?LPVOID?lpReserved)
{
????switch?(ul_reason_for_call)
{
case?DLL_PROCESS_ATTACH:
case?DLL_THREAD_ATTACH:
case?DLL_THREAD_DETACH:
case?DLL_PROCESS_DETACH:
break;
????}
????return?TRUE;
}

//將回調(diào)函數(shù)入口賦值給g_pFuncCallBack,自編程序中可以就可以使用g_pFuncCallBack函數(shù)調(diào)用通達(dá)信內(nèi)部數(shù)據(jù)(如開盤價(jià)、收盤價(jià)、最高價(jià)、最低價(jià)、成交金額、成交量等等(具體數(shù)據(jù)結(jié)構(gòu)參見OutStruct.h)。

PDATAIOFUNC ?g_pFuncCallBack;
void?RegisterDataInterface(PDATAIOFUNC?pfn)
{
g_pFuncCallBack?=?pfn;
}

//注:?本文件以上部分需要完整保留,不要做任何修改(除非你知道自己在做什么)



/////////////////////?注冊(cè)插件信息?///////////////////////
//注冊(cè)插件信息:將公式名稱,公式描述,參數(shù)數(shù)量、參數(shù)名字、參數(shù)最大最小及默認(rèn)值等信息傳送給通達(dá)信,并將存儲(chǔ)區(qū)地址傳遞給LPPUGIN結(jié)構(gòu)的指針info(具體數(shù)據(jù)結(jié)構(gòu)將Plugin.h。本函數(shù)的具體參數(shù)賦值可以根據(jù)用戶需要修改。
void?GetCopyRightInfo(LPPLUGIN?info)
{
//填寫基本信息
strcpy(info->Name“插件選股1“);?//此信息會(huì)顯示在通達(dá)信插件選股對(duì)話框中“名稱”欄
strcpy(info->Dy“上?!埃?
strcpy(info->Author“Julian?Zhang“); //此信息會(huì)顯示在通達(dá)信插件選股對(duì)話框中“設(shè)計(jì)人”欄
strcpy(info->Period“短線“); //還不清楚有什么用
strcpy(info->Descript“MA上穿選股“); //此信息會(huì)顯示在通達(dá)信插件選股對(duì)話框中“選股對(duì)象”欄
strcpy(info->OtherInfo“無其它信息描述“);
//填寫參數(shù)信息
info->ParamNum?=?2; //定義插件參數(shù)數(shù)量,必須是[0~4]之間整數(shù);
strcpy(info->ParamInfo[0].acParaName“MA短天數(shù)“);?//第一個(gè)參數(shù)的名稱
info->ParamInfo[0].nMin=1; //這部分通達(dá)信官方模板錯(cuò)誤寫成nMax,應(yīng)該為nMin,參數(shù)最小值;
info->ParamInfo[0].nMax=1000; //定義參數(shù)最大值
info->ParamInfo[0].nDefault=10; //定義參數(shù)默認(rèn)值

strcpy(info->ParamInfo[1].acParaName“MA長天數(shù)“);?//第二個(gè)參數(shù)的名稱
info->ParamInfo[1].nMin=1;
info->ParamInfo[1].nMax=1000;
info->ParamInfo[1].nDefault=20;
}

////////////////////////////////用戶自定義選股公式部分/////////////////////////////////////////
//自定義選股公式實(shí)現(xiàn)細(xì)節(jié)函數(shù)(可根據(jù)選股需要添加)

?const BYTE g_nAvoidMask[]={0xF80xF80xF80xF8}; //?無效數(shù)據(jù)標(biāo)志(通達(dá)信系統(tǒng)定義)

WORD???AfxRightData(float?*pDataWORD?nMaxData) //獲取有效數(shù)據(jù)位置
{
for(WORD?nIndex=0;?nIndex return(nIndex);
}

void???AfxCalcMa(float*pDatalong?nDataWORD?nParam)??//計(jì)算簡單移動(dòng)平均MA通達(dá)信模板原函數(shù)未做任何修改
{
if(pData==NULL||nData==0||nParam==1)?return;
long?i=nData-nParam+1nMinEx=AfxRightData(pDatanData);
if(nParam==0||nParam+nMinEx>nData)?nMinEx=nData;
else
{
float nDataEx=0nDataSave=0;
float *MaPtr=pData+nData-1*DataPtr=pData+nData-nParam;
for(nMinEx+=nParam-1;i for(i=nData-1;i>=nMinEx;i--MaPtr--DataPtr--)
{
nDataEx+=(*DataPtr);
nDataSave=(*MaPtr);
*MaPtr=nDataEx/nParam;
nDataEx-=nDataSave;
}
}
}

WORD???AfxCross(float*psDatafloat*plDataWORD?nIndexfloat&nCross)?//判斷穿越,返回值0:當(dāng)前未發(fā)生穿越;1:上穿;2:下穿
{
if(psData==NULL||plData==NULL||nIndex==0)?return(0);
float??nDif=psData[nIndex-1]-plData[nIndex-1];
float??nDifEx=plData[nIndex]-psData[nIndex];
float??nRatio=(nDif+nDifEx)?nDif/(nDif+nDifEx):0;
nCross=psData[nIndex-1]+(psData[nIndex]-psData[nIndex-1])*nRatio;
if(nDif<0&&nDifEx<0) return(1);

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件?????241768??2015-05-07?20:58??MyPlugin\Debug\AddTxt.dll

?????文件?????249960??2015-05-08?16:12??MyPlugin\Debug\MyPlugin.dll

?????文件????????985??2015-05-07?21:53??MyPlugin\Debug\MyPlugin.exp

?????文件?????372496??2015-05-08?16:12??MyPlugin\Debug\MyPlugin.ilk

?????文件???????2660??2015-05-07?21:53??MyPlugin\Debug\MyPlugin.lib

?????文件??????17199??2015-05-08?16:12??MyPlugin\Debug\MyPlugin.obj

????I.A....???1815408??2015-05-08?14:06??MyPlugin\Debug\MyPlugin.pch

?????文件?????746496??2015-05-08?16:12??MyPlugin\Debug\MyPlugin.pdb

?????文件???????5448??2015-05-07?16:03??MyPlugin\Debug\StdAfx.obj

?????文件??????99328??2015-05-08?16:12??MyPlugin\Debug\vc60.idb

?????文件??????61440??2015-05-08?16:12??MyPlugin\Debug\vc60.pdb

?????文件???????6841??2015-05-08?16:12??MyPlugin\MyPlugin.cpp

?????文件??????49152??2013-09-18?11:33??MyPlugin\MyPlugin.dll

?????文件???????4325??2013-09-18?11:41??MyPlugin\MyPlugin.dsp

?????文件????????539??2002-10-22?11:35??MyPlugin\MyPlugin.dsw

?????文件??????91136??2015-05-08?16:12??MyPlugin\MyPlugin.ncb

?????文件??????48640??2015-05-08?16:12??MyPlugin\MyPlugin.opt

?????文件???????2350??2015-05-08?16:12??MyPlugin\MyPlugin.plg

?????文件???????5156??2015-05-08?09:18??MyPlugin\OutStruct.h

?????文件???????1728??2015-05-08?08:46??MyPlugin\Plugin.h

?????文件????????294??2001-01-15?16:53??MyPlugin\StdAfx.cpp

?????文件????????698??2015-05-08?08:13??MyPlugin\StdAfx.h

?????文件???????4752??2013-09-18?11:16??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\MyPlugin.cpp

?????文件??????49152??2013-09-18?11:33??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\MyPlugin.dll

?????文件???????4325??2013-09-18?11:41??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\MyPlugin.dsp

?????文件????????539??2002-10-22?11:35??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\MyPlugin.dsw

?????文件??????58368??2015-05-07?15:39??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\MyPlugin.ncb

?????文件??????48640??2015-05-07?15:39??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\MyPlugin.opt

?????文件???????5156??2013-09-18?11:22??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\OutStruct.h

?????文件???????1662??2013-09-18?11:27??插件編程規(guī)范-通達(dá)信原版文件\MyPlugin\Plugin.h

............此處省略24個(gè)文件信息

評(píng)論

共有 條評(píng)論