简易股票投资管理系统.doc
《简易股票投资管理系统.doc》由会员分享,可在线阅读,更多相关《简易股票投资管理系统.doc(88页珍藏版)》请在咨信网上搜索。
1、简易股票投资管理系统882020年5月29日文档仅供参考 組長 : 89214020 潘國成組員 : 88214028 簡維新 88214034 王宏民 88214040 童世遠 簡易股票投資管理系統一 系統功能、輸入與輸出的資料: 在台灣股市可為全民運動,加上現今投資理財的風氣十分盛行,股票市場幾乎是最大規模的資本市場,記錄股票的賣出買入及損益,若無電腦輔助可謂事倍功半,費心費力,因此我們這次的作業作的就是股票管理系統,幫助投資人處理惱人的資料和紀錄過去的交易狀況,並且可在系統上知道最新的股市資訊,還可立即計算當時的資產變動情況,損益和報酬。本系統採用會員制度,會員可享用完整的功能,非會員也
2、擁有查詢股市的功能,十分的方便。這個系統包含以下幾種的基本功能:查詢: 查詢方面,提供使用者查詢個股資訊,並能够細部查詢個股之詳細資料。可供查詢之項目分別為:股票代碼、股票名稱、股票價格、股本、EPS、本益比、每股淨值。另外也提供了以上名詞的簡易解釋,有助於使用者在基本面的選股判斷。管理: 管理方面,可提供使用者紀錄各項交易記錄。透過儲存之交易檔案,能够為使用者整合多項資訊。如:已實現損益、未實現損益、股票購入歷史價格、買賣張數、買賣價格等。幫助使用者瞭解投資之狀況,以評估未來之投資決策。以下列出系統所處理的輸入及輸出檔案介紹及欄位說明:程式所需輸入之資料檔案如下:1. 股票資訊檔:stock
3、.log(程式預設數量20)股票的資訊檔案。包含下例欄位: 股票代碼:證交所每支股票都有其編號,以方便交易。 股票名稱 價格 股本 :每股稅後盈餘 本益比 每股淨值:例 :含有3筆資料的股票資訊檔代碼 名稱 (某日)現價 股本 EPS(估) 每股淨值1101 台泥 10.65 249.2 0.7 18.171216統一 9.85 344.2 0.4 12.111301臺塑 44.6 453.4 2.63 22.072. 會員資料檔:club.txt(程式預設數量2)提供系統執行身份認證時,檢查會員之帳號、密碼。Id 姓名 密碼88214040童小遠 123488214034王小民 5678-1
4、unused -1-1unused -1-1unused -1程式輸出之資料檔案如下:(僅會員擁有)1. 個人投資組合(主要用來計算損益):my_pfo1.txt, my_pfo2.txt記錄了投資組合種類個數、股票代碼、股票名稱、擁有張數、歷史平均價格、現價、個股之買進價格、已實現損益。(程式預設數量20)2. 個人交易記錄(主要用來記錄交易狀況):trade1.txt,trade2.txt個人所有之交易記錄。包括:交易個數、股票代碼、股票名稱、買進張數、買進價格、賣出張數、賣出價格。 (程式預設數量100)二、 應用層面說明 此系統除了可運用在個人股票的管理外,還能够運用在入口網站會員的自
5、選股票交易管理上,用來記錄大量的會員股市交易和損益。三 、 資料結構說明 在程式當中我們使用了4種資料結構(data structure);1. 股票的資料結構(STOCKINFO),用來儲存股票的資料。股票資料(STOCKINFO)欄位意義欄位名稱股票代碼int code股票名稱char name80價格float price股本float equityEPSfloat EPS本益比int ratio每股淨額char netvalue102. 會員的資料結構會員資料(CLUB)欄位意義欄位名稱會員idint code會員名稱char name80會員密碼float price3. 會員手中持
6、有投資組合結構(PORTFOLIO)。 投資組合結構(PORTFOLIO)欄位意義欄位名稱股票代碼int code股票名稱char name80張數int mount買入歷史平均價float price_avg個股現價float price_now買入的價格float price_buy504. 交易記錄的資料結構檔(REPORT):用來存放每次交易的資料。交易記錄(REPORT)欄位意義欄位名稱股票代碼int code股票名稱char name80買入張數int mount_buy買入價格loat price_buy賣出張數int mount_sell賣出價格float price_sell
7、三、 程式說明 寫在前頭、重要須知:此程式有幾點需要事先說明,有助於對程式的瞭解。第一:此程式的stock.log檔必須隨著時間每日更新,特别是股票(stockinfo)的現價欄,如此一來在計算未實現損益時方才有意義。第二:此程式計算損益上,暫時不考慮證券交易稅以及買賣的手續費,主要因為手續費會隨著交易券商的規定而有所改變.。第三:在計算損益上,會計學上有三種法則:先進先出法、後進先出法、平均成本法,而我們程式所採用的是較為折衷的平均成本法,也就是說當時間點不同,有重複買進單一個股的紀錄時,程式會記錄下買進的價格,利用買進的價格來計算買進歷史平均價,而當有賣出動作時,則計算賣出價格與歷史平均價
8、之間的差價來作為損益的計算。第四:關於買賣股票的最小單位為1張,而1張為1000股,假設買進A股票面額10元,實際所付出的成本為10000元,又假設賣出價格為11元,則實收金額為11000元,也就是賺了1000元的差價。 1主程式 main(). 說明:先載入股票的資料檔,和會員的個人資料檔,最後依據使用者的選項做相對應的動作 參數 :無 傳回值:無 流程圖 :管理者部分輸入管理者密碼輸入選項密碼8888 ?NO離開程式AddQuitDel使用者部分副程式 user_exam :檢驗會員id 與 password通過檢驗則會傳回 會員id值副程式 user_main :根據會員id值開啟其個人
9、記錄檔,並帶入選單之中離開程式guest部分副程式 view_info:查詢股票資訊離開程式程式碼部分main()/*FILE*/FILE *stock_file;FILE *club_file; /*定義四大arrry*/struct STOCKINFO stockSTOCK_NUM+1;struct PORTFOLIO my_pfoPFO_NUM+1;struct REPORT tradeTRADE_NUM+1;struct CLUB clubsCLUB_NUM+1;char choice; /主選單之選項int pwd; /輸入選項用_passwordint user_id;/輸入選項用
10、_user_id/*open stock file*/if(stock_file = fopen(stock.log, r)load_stock(stock,stock_file);/呼叫副程式:讀入股票檔內容elseprintf(無法開啟股票資料檔,程式終結!n);exit(1); /離開程式fclose(stock_file); /關閉讀檔/*open club file*/if(club_file=fopen(club.txt,r)load_club(clubs,club_file);/呼叫副程式:讀入會員檔內容elseprintf(無法開啟會員資料檔,程式終結!n);exit(1);
11、fclose(club_file); /關閉讀檔printf(=);printf(n);printf( 歡迎使用簡易個人股票管理系統 ); printf(n);printf(請選擇登入身分 1.系統管理員 2.會員 3.guest );printf(n);printf(請選擇);scanf(%c,&choice); /輸入選項switch(choice)case 1:printf(請輸入管理者passward:);fflush(stdin);scanf(%d,&pwd);if(pwd=8888)/預設管理者password = 8888manager_main(); /呼叫副程式manager
12、_mainelseprintf(密碼輸入錯誤!請輸入正確密碼n);break;case 2:user_id=user_exam(clubs); /呼叫副程式 user_examuser_main(user_id,stock,my_pfo,trade); /呼叫副程式 user_amin break;case 3: printf(歡迎使用此系統,請繼續n); view_info(stock); /呼叫副程式 view_info break; default: printf(無效的選項n);break; 2. 副程式 manager_main (管理者主要功能區)void manager_main
13、()char choice; /輸入選項之用printf(管理者順利登入);printf(n);printf(=main menu=); printf(n);printf( a. 新增會員);printf(n); printf( d. 刪除會員);printf(n);printf( q. 儲存資料並跳出);printf(n);printf(=);printf(n);printf(請選擇);fflush(stdin); /清空緩衝區 scanf(%c,&choice); /輸入選項switch(choice) case a: for(i=1;i); scanf(%d,&id); result=s
14、earch_club(clubs,id); if(result!=-1) printf(會員ID重複輸入,新增失敗,請重新登入n); exit(1); else clubsi.id=id; printf(請輸入新增會員的姓名:); scanf(%s,&clubsi.name); printf(請輸入新增會員的密碼:); scanf(%d,&clubsi.pwd); break; save_club(clubs);/呼叫副程式:儲存結果 break; case d: printf(請輸入欲刪除會員ID:); fflush(stdin); scanf(%d,&id); printf(n); res
15、ult=search_club(clubs,id); /呼叫副程式:查詢是否在會員名單中,正確傳回該index if(result=-1) printf(會員ID輸入錯誤,請重新執行n); exit(1); else clubsresult.id=-1; save_club(clubs);/呼叫副程式:儲存結果 break;default: printf(無效的選項n);break; user_exam(檢驗會員ID,密碼)int user_exam(struct CLUB clubs)int i;int id,passwd; /輸入選項用int result; /儲存search副程式傳回值
16、printf(請輸入會員ID:); scanf(%d,&id); printf(n); result=search_club(clubs,id); /呼叫副程式:檢驗該id是否為會員 if(result= -1) printf(錯誤的會員IDn); /會員id輸入錯誤 exit(1); else for(i=1;i);scanf(%d,&passwd);if (passwd=clubsresult.pwd) /密碼登入正確printf(n會員順利登入,請繼續使用n);return result; /傳回會員index printf(登入錯誤超過3次,請重新登入n); exit(1); user
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简易 股票投资 管理 系统
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。