以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  [原创]数据库工具  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=4962)

--  作者:z7c9
--  发布时间:2011/1/23 19:58:15
--  [原创]数据库工具

以下内容为程序代码:

1 if barpos=1 then begin
2     sql:=\'drop table tradedetail\';
3     dbexecute(sql);
4     
5     sql:=\'drop table myasset\';
6     dbexecute(sql);
7     
8     sql:=\'create table tradedetail(opendate datetime,contractname text,opentime datetime,openprice number,tradetype text,closetime datetime,\'+
9                              \'closeprice number,winlosspoint number,lots number,commissions number,closewinloss number,strategy text,account text)\';
10     
11     dbexecute(sql);
12     
13     sql:=\'create table myasset(tradedate datetime,asset number,closewinloss number,return number,cumreturn number,account text)\';
14     dbexecute(sql);
15 end

[此贴子已经被作者于2011-1-23 20:21:33编辑过]

--  作者:xian_0_9
--  发布时间:2011/1/25 12:46:18
--  

图片点击可在新窗口打开查看

谢谢分享


--  作者:z7c9
--  发布时间:2011/1/25 13:46:06
--  

以下内容为程序代码:

1 database(\'provider=microsoft.jet.oledb.4.0;data source=分析数据库.mdb\');
2
3 if barpos=1 then begin
4     sql:=\'drop table 账户\';
5     dbexecute(sql);
6     
7     sql:=\'drop table 策略\';
8     dbexecute(sql);
9     
10     sql:=\'drop table 权益\';
11     dbexecute(sql);    
12     
13     sql:=\'drop table 交易明细\';
14     dbexecute(sql);
15     
16     sql:=\'create table 账户(名称 text,id text,开始时间 datetime,结束时间 datetime,初始资金 number,期末权益 number,累计收益率 number)\';
17     dbexecute(sql);
18     
19     sql:=\'create table 策略(名称 text,交易品种 text,交易周期 text,入市策略 text,风险控制 text,资金管理 text)\';
20     dbexecute(sql)    ;
21     
22     sql:=\'create table 权益(日期 datetime,权益 number,平仓盈亏 number,收益率 number,累计收益率 number,账户 text)\';
23     dbexecute(sql);
24     
25     sql:=\'create table 交易明细(开仓日期 datetime,合约名称 text,开仓时间 datetime,开仓价格 number,交易类型 text,平仓时间 datetime,平仓价格 number,盈亏点数 number,交易手数 number,总手续费 number,平仓盈亏 number,策略 text,账户 text)\';
26     
27     dbexecute(sql);        
28     
29     sql:=\'insert into 账户(名称,id,开始时间,初始资金) values("myaccount","myaccount","\'+numtostr(year,0)+\'-\'+numtostr(month,0)+\'-\'+numtostr(day,0)+\'",40000)\';
30     dbexecute(sql);
31 end

[此贴子已经被作者于2011-1-25 13:53:44编辑过]

--  作者:z7c9
--  发布时间:2011/1/25 14:19:45
--  
以下内容为程序代码:

1 database(\'provider=microsoft.jet.oledb.4.0;data source=Analysis.mdb\');
2 debug=1;
3
4 if debug=1 and barpos=1 then begin
5
6     dbexecute(\'drop table 账户\');
7     dbexecute(\'drop table 策略\');
8     dbexecute(\'drop table 权益\');    
9     dbexecute(\'drop table 交易明细\');    
10
11     dbexecute(\'create table 账户(名称 text,id text,开始时间 datetime,结束时间 datetime,初始资金 number,期末权益 number,累计收益率 number)\');
12     dbexecute(\'create table 策略(名称 text,交易品种 text,交易周期 text,入市策略 text,风险控制 text,资金管理 text)\')    ;
13     dbexecute(\'create table 权益(日期 datetime,权益 number,平仓盈亏 number,收益率 number,累计收益率 number,账户 text)\');
14     dbexecute(\'create table 交易明细(开仓日期 datetime,合约名称 text,开仓时间 datetime,开仓价格 number,交易类型 text,平仓时间 datetime,平仓价格 number,盈亏点数 number,交易手数 number,总手续费 number,平仓盈亏 number,策略 text,账户 text)\');        
15     
16     sql:=\'insert into 账户(名称,id,开始时间,初始资金) values("myaccount","myaccount","\'+numtostr(year,0)+\'-\'+numtostr(month,0)+\'-\'+numtostr(day,0)+\'",40000)\';
17     dbexecute(sql);
18 end

--  作者:z7c9
--  发布时间:2011/1/26 10:18:08
--  

以下内容为程序代码:

1 database(\'provider=microsoft.jet.oledb.4.0;data source=Analysis.mdb\');
2 debug:=1;
3
4 if debug=1 and barpos=1 then begin
5     dbexecute(\'drop table 账户\');
6     dbexecute(\'drop table 策略\');
7     dbexecute(\'drop table 权益\');    
8     dbexecute(\'drop table 交易明细\');    
9
10     dbexecute(\'create table 账户(名称 text,id text,开始时间 datetime,结束时间 datetime,初始资金 number,期末权益 number,累计收益率 number)\');
11     dbexecute(\'create table 策略(名称 text,交易品种 text,交易周期 text,入市策略 text,风险控制 text,资金管理 text)\')    ;
12     dbexecute(\'create table 权益(日期 datetime,权益 number,平仓盈亏 number,收益率 number,累计收益率 number,账户 text)\');
13     dbexecute(\'create table 交易明细(开仓日期 datetime,合约名称 text,开仓时间 datetime,开仓价格 number,交易类型 text,平仓时间 datetime,平仓价格 number,盈亏点数 number,交易手数 number,总手续费 number,平仓盈亏 number,策略 text,账户 text)\');        
14     
15     dbexecute(\'insert into 账户(名称,id,开始时间,初始资金) values("myaccount","myaccount","\'+numtostr(year,0)+\'-\'+numtostr(month,0)+\'-\'+numtostr(day,0)+\'",40000)\');
16     dbexecute(\'insert into 策略(名称,交易品种,交易周期,入市策略,风险控制,资金管理) values("PCB","白糖","5分钟","趋势跟踪","止损","CPR")\');
17 end

[此贴子已经被作者于2011-1-26 10:18:22编辑过]

--  作者:readonly
--  发布时间:2012/5/8 21:04:30
--  
为什么前一楼二楼例子要先赋值SQL后,再执行;而后面的就直接执行,仅仅是编程习惯问题吗?