1.作者简介
刘小威 计算机科学与技术专业
邓健 计算机科学与技术专业
李虹霞 工商管理专业
2.开发平台
操作系统:Windows XP;
编程环境:Delphi 7.0
数据库软件:Microsoft Office Access 2003
3.软件简介
该系统数据源的输入是以文本的的形式导入,输入的数据量大,但是此系统功能避免了手动输入,大量数据的输入也很方便。文档收集自网络,仅用于个人学习
数据分析的是连续多天的数据,对股票的稳定性起到参考的作用。当数据太旧了,可以选择删除具体某一天的数据。文档收集自网络,仅用于个人学习
4.主要程序代码说明
4.1文本数据的导入
if OpenDialog1.Execute then
begin
;
;
with memo1 do
for i:= 0 to do
begin
vLine := trim(lines.Strings[i]);
temp1 := Trim(Copy(vLine,32,35));
temp2 := Trim(Copy(vLine,16,20));
temp3 := Trim(Copy(vLine,23,25));
if not ADOTable1.Active then ADOTable1.Open;
ADOTable1.Append;
ADOTable1.FieldByName('F_StockID').AsString:=Trim(Copy(vLine,1,6));
ADOTable1.FieldByname('F_Stock1').AsString:=Trim(Copy(vLine,7,9));
ADOTable1.FieldByName('F_Rtio1').AsString:=Trim(Copy(temp2,0,6));
ADOTable1.FieldByname('F_Stock2').AsString:=Trim(Copy(temp3,1,8));
ADOTable1.FieldByName('F_Rtio2').AsString:=Trim(Copy(temp1,0,6));
ADOTable1.FieldByName('F_Time').AsString := DateToStr(time);
end;
| end |
var
sql,times,stime,etime : String;
begin
stime := DCstart.Text;
etime := DCend.Text;
AQbsgTimes.Active := true;
sql := 'SELECT top '+ CB10.Text +' Count(*)*10000 AS Times,Val(F_InId) as InId,Sum(F_AddFund) as AddFund ';
sql := sql + ' FROM T_InOutRang ';
sql := sql + ' WHERE F_Time Between #'+ComboBox1.Text + '# And #' + ComboBox2.Text+'#';
sql := sql + ' GROUP BY VAL(F_InId) ';
case RG1.ItemIndex of
0: sql := sql + 'ORDER BY Sum(F_AddFund) DESC';
1: sql := sql + 'ORDER BY Count(*)*10000 DESC';
else
end;
DoQuery(AQbsgTimes,sql);
Series2.DataSource := AQbsgTimes;
Series3.DataSource := AQbsgTimes;
Series3.XLabelsSource:= 'InId';
:= 'Times';
Series2.XLabelsSource := 'InId';
| := 'AddFund'; |
var
sql,times,stime,etime : String;
sqlAvg:String;
avg : double;
begin
sql := ' SELECT top '+CB2.Text+' sum(F_SuperIn) AS SuperIn,Sum(F_BigIn) as BigIn,'
+' Sum(F_ExRatio) as ExRatio,VAL(F_StockID) as StockID';
sql := sql + ' FROM T_BSRang ';
sql := sql + ' WHERE F_Time Between #'+ComboBox3.Text + '# And #' + ComboBox4.Text+'#';
sql := sql + ' GROUP BY VAL(F_StockID) ';
case RG3.ItemIndex of
0: sql := sql + 'ORDER BY sum(F_SuperIn) DESC';
1: sql := sql + 'ORDER BY sum(F_BigIn) DESC';
2: sql := sql + 'ORDER BY sum(F_ExRatio) DESC';
else
end;
AQBsg.Active := true;
DoQuery(AQBsg,sql);
Series1.DataSource := AQBsg;
Series4.DataSource := AQBsg;
Series5.DataSource := AQBsg;
Series1.XLabelsSource:= 'StockID';
:= 'SuperIn';
Series4.XLabelsSource := 'StockID';
:= 'BigIn';
Series5.XLabelsSource := 'StockID';
:= 'ExRatio';
| end; |
procedure TFdelete.BitBtn1Click(Sender: TObject);
var
sql:String;
time:String;
begin
case RGdelete.ItemIndex of
0: sql := 'DELETE * FROM T_InOutRang WHERE F_Time= #'+DBdeleteTime.Text+'#';
1: sql := 'delete * from T_BSRang WHERE F_Time= #'+DBdeleteTime.Text+'#';
else
end;
DoExecute(AQdelete,sql);
Showmessage('已成功删除!');
| end; |
5.1 主界面
说明:股票分析软件主窗体包括资金导入、数据清除、数据分析3个功能块。窗体主界面显示分析显示结果。
5.2“数据导入”菜单项
5.3数据导入窗口
5.4“数据分析”菜单项
5.5净资金流入分析
说明:用户可以对资金净流入选择从某一天到另一天连续多天的数据分析,选择按“入榜总金额”或“入榜次数”进行前几名的排名。同时,在最下行可以根据“股票代码”查询“股票的名称”。文档收集自网络,仅用于个人学习
5.6大单成交比分析
说明:用户可以对个股大单选择从某一天到另一天连续多天的数据分析,选择按“特大单买入比”、“大单买入比”或“换手率比”进行前几名的排名。同时,在最下行可以根据“股票代码”查询“股票的名称”。文档收集自网络,仅用于个人学习
5.7查看源数据窗体
说明:用户可以查看到数据库里所有的资金净流入数据和大单成交比数据。同时,在最下行可以根据“股票代码”查询“股票的名称”。文档收集自网络,仅用于个人学习
5.8“数据清除”菜单项
5.9数据清除窗体
说明:用户可以删除某一天的个股资金净流入个股排行数据或者删除某一天的个股大单成交比排行数据。一键清空数据库的功能:清除所有的个股资金净流入个股排行数据以及个股大单成交比排行数据。文档收集自网络,仅用于个人学习下载本文