feat(tsl-api-reference): add class and framework API lookup

This commit is contained in:
csh
2026-08-20 13:49:55 +08:00
parent 7233646398
commit 651c1f68d2
637 changed files with 25498 additions and 36673 deletions
@@ -1,6 +1,6 @@
# 回测 / 快速回测
## `QuickBackTesting`
## `quickBackTesting`
声明:class
@@ -8,7 +8,7 @@
<!-- tags: 调用 历史模拟 策略验证 比较基准 业绩基准 快速测试 -->
### `fEndT`
### `FEndT`
声明:field
@@ -18,7 +18,7 @@
类型:date_time
### `fCycle`
### `FCycle`
声明:field
@@ -28,7 +28,7 @@
类型:string
### `fPoint`
### `FPoint`
声明:field
@@ -38,7 +38,7 @@
类型:integer
### `fIndexId`
### `FIndexId`
声明:field
@@ -48,7 +48,7 @@
类型:string
### `fRateType`
### `FRateType`
声明:field
@@ -58,7 +58,7 @@
类型:integer
### `quickBackTest()`
### `QuickBackTest()`
声明:function
@@ -70,7 +70,7 @@
返回:array
### `getTimeSeries()`
### `GetTimeSeries()`
声明:function
@@ -87,7 +87,7 @@
范例01:调用基类实现
```tsl
obj := createObject("QuickBackTesting");
obj := createObject("quickBackTesting");
obj.FBegT := intToDate(20130101);
obj.FEndT := intToDate(20130108);
obj.FCycle := cy_day();
@@ -97,7 +97,7 @@ return ret;
// 输出:array(41278.0,41281.0,41282.0)
```
### `getTradeOrder(v_end_t)`
### `GetTradeOrder(v_end_t)`
声明:function
@@ -113,7 +113,7 @@ return ret;
返回:array
### `getPortfolioReturn()`
### `GetPortfolioReturn()`
声明:function
@@ -125,7 +125,7 @@ return ret;
返回:array
### `getPortfolioReturn(v_beg_t, v_end_t)`
### `GetPortfolioReturn(v_beg_t, v_end_t)`
声明:function
@@ -142,7 +142,7 @@ return ret;
返回:array
### `getPortfolioReturn2(v_beg_t, v_end_t)`
### `GetPortfolioReturn2(v_beg_t, v_end_t)`
声明:function
@@ -159,7 +159,7 @@ return ret;
返回:float
### `getPortfolioReturn3(v_beg_t, v_end_t)`
### `GetPortfolioReturn3(v_beg_t, v_end_t)`
声明:function
@@ -182,18 +182,18 @@ return ret;
```tsl
//新建子类继承基类
Type MyQKBackTesting=class(QuickBackTesting)
Type myQKBackTesting=class(quickBackTesting)
public
function GetTimeSeries();override;
function GetTradeOrder(vEndT);override;
end;
//重写GetTimeSeries方法
function MyQKBackTesting.GetTimeSeries();override;
function myQKBackTesting.GetTimeSeries();override;
begin
//具体代码省略
end;
//重写GetTradeOrder方法
function MyQKBackTesting.GetTradeOrder(vEndT);override;
function myQKBackTesting.GetTradeOrder(vEndT);override;
begin
//具体代码省略
end;
@@ -205,14 +205,12 @@ end;
Function MyQKBackTesting(BegT,EndT,MyPortfolioArr);
Begin
//创建对象
obj := CreateObject('MyQKBackTesting');
obj := CreateObject('myQKBackTesting');
//初始化实例,给变量赋值(其他变量可参考成员变量介绍)
obj.FBegT := BegT;
obj.FEndT := EndT;
//回测:调用对象obj的backtest方法
obj.QuickBackTest();
@@ -232,7 +230,7 @@ End;
Function
TSFL_QuickBackTesting_File(Begt,Endt,IndexId,IniPoint,Ratetype,Mydata);
Begin
obj := CreateObject('QKbackTestEg');
obj := CreateObject('qKbackTestEg');
//用户导入的配置数据
obj.MyPortfolioArr := mydata;
//回测开始时间
@@ -257,7 +255,7 @@ Begin
End;
Type QKbackTestEg=class(QuickBackTesting)
Type qKbackTestEg=class(quickBackTesting)
public
MyPortfolioArr;
function GetTimeSeries();override;
@@ -269,13 +267,13 @@ public
function GetTradeOrder(vEndT);override;
end;
function QKbackTestEg.GetTimeSeries();override;
function qKbackTestEg.GetTimeSeries();override;
begin
//从导入的配置文件中获取调仓日序列
return MyPortfolioArr[:,'截止日'] union2 array();
end;
function QKbackTestEg.GetTradeOrder(vEndT);override;
function qKbackTestEg.GetTradeOrder(vEndT);override;
begin
//查询某个调仓日的配置数据
t := Select * from MyPortfolioArr where ['截止日']=vEndT end;