愛好delphi的朋友嗎,有個例子,可以用delphi玩下金字塔的dll [金字塔]
- 咨詢內(nèi)容:
經(jīng)本人測試,ok沒問題
unit FxjFunc;interface
uses Types;
type
///////////////////////////////////////////////////////////////////////////
//分析周期
TDataType = (
TICK_DATA=2, //分筆成交
MIN1_DATA, //1分鐘線
MIN5_DATA, //5分鐘線
MIN15_DATA, //15分鐘線
MIN30_DATA, //30分鐘線
MIN60_DATA, //60分鐘線
DAY_DATA, //日線
WEEK_DATA, //周線
MONTH_DATA, //月線
MULTI_DATA //多日線
);///////////////////////////////////////////////////////////////////////////
//基本數(shù)據(jù)PStkData = ^TStkData;
TStkData = packed record
Time: LongWord; //時間,UCT
Open: Single; //開盤
High: Single; //最高
Low: Single; //最低
Close: Single; //收盤
Volume: Single; //成交量
Amount: Single; //成交額
Advance: Word; //上漲家數(shù)(僅大盤有效)
Decline: Word; //下跌家數(shù)(僅大盤有效)
end;////////////////////////////////////////////////////////////////////////////
//基本數(shù)據(jù) [數(shù)組]PStkDataArray = ^TStkDataArray;
TStkDataArray = array[0..$EFFF] of TStkData;
////////////////////////////////////////////////////////////////////////////
//擴展數(shù)據(jù),用于描述分筆成交數(shù)據(jù)的買賣盤PStkDataEx = ^TStkDataEx;
TStkDataEx = packed record
case Integer of
0: (
BuyPrice: array[0..2] of Single; //買1--買3價
BuyVol: array[0..2] of Single; //買1--買3量
SellPrice:array[0..2] of Single; //賣1--賣3價
SellVol: array[0..2] of Single; //賣1--賣3量
);
1: (
DataEx: array[0..11] of Single; //保留
);
end;/////////////////////////////////////////////////////////////////////////////
//函數(shù)數(shù)據(jù)結(jié)構(gòu)TSingleArray = array[0..$EFFF] of Single;
PSingleArray = ^TSingleArray;
PCalcInfo = ^TCalcInfo;
TCalcInfo = packed record
Size: DWORD; //結(jié)構(gòu)大小
Version: DWORD; //調(diào)用軟件版本(V2.10 : 0x210)
Serial: DWORD; //調(diào)用軟件序列號
StkLabel: PChar; //股票代碼
Index: LongBool; //大盤NumData: Integer; //數(shù)據(jù)數(shù)量(pData,pDataEx,pResultBuf數(shù)據(jù)數(shù)量)
Data: PStkDataArray; //常規(guī)數(shù)據(jù),注意:當(dāng)m_nNumData==0時可能為 NULL
DataEx: PStkDataEx; //擴展數(shù)據(jù),分筆成交買賣盤,注意:可能為 NULLParam1Start: Integer; //參數(shù)1有效位置
Param1: PSingle; //調(diào)用參數(shù)1
Param2: PSingle; //調(diào)用參數(shù)2
Param3: PSingle; //調(diào)用參數(shù)3
Param4: PSingle; //調(diào)用參數(shù)4ResultBuf: PSingleArray; //結(jié)果緩沖區(qū)
DataType: TDataType; //數(shù)據(jù)類型
FinData: PSingle; //財務(wù)數(shù)據(jù)
end;
implementationvar
pr : array[0..$EFFF] of Tpr;
prNum, duNum : integer;//============================================================================
// 將數(shù)據(jù)拷貝到 pr數(shù)組中procedure CopyDataTo_Pr(data: PCalcInfo);
var
i:integer;
begin
prNum := data.NumData;for i := 0 to prNum-1 do
begin
pr[i].hprice := data.Data[i].High;
pr[i].lprice := data.Data[i].Low;
pr[i].Time := data.Data[i].Time;
end;
end;//=============================================================================
function xx1(data: PCalcInfo):integer;stdcall;
CopyDataTo_Pr(data);//這里直接調(diào)用pr數(shù)組當(dāng)K線數(shù)組用就行了
end;function xx2(Data:PCalcInfo):integer;stdcall;
end;
exportsxx1,xx2;
[此貼子已經(jīng)被作者于2011-5-8 16:12:24編輯過]
end. - 金字塔客服:
另再補充一個,關(guān)于參數(shù)的問題,if (@pData.m_pfParam1 <> nil) and (@pData.m_pfParam2 <> nil) then
采用如是方式 - 用戶回復(fù):
不好意思,再補充下,ResultBuf: PSingleArray; 通過這個返回序列值
- 網(wǎng)友回復(fù):
不錯
- 上一篇:統(tǒng)計盈利天數(shù)
- 下一篇:誰有倉位初始化的原碼模版 謝謝
相關(guān)文章
-
沒有相關(guān)內(nèi)容