sjgau 發表於 12-4-10 07:23

我想要寫 C語言程式設計 分析十年一分鐘K線資料

目前的進度是 0,
剛好 ,大家可以跟我 一起成長

想要學習 程式設計的朋友,
可以順便

我的構想是

盤勢,不外乎是 盤整和趨勢,

當趨勢出現的時候,採用 A計畫,
當盤整的時候,採用 B計畫。

我一定會 知無不言,言無不盡。

ㄒ忘大家會有 興趣,這是你 學習 程式設計和
程式交易的 絕佳機會,請跟我 一起從 0開始


micat 發表於 12-4-10 07:55

雖然我不會程式設計
也沒有一個穩定的交易策略

還是祝福你賺大錢~~~

philipz 發表於 12-4-10 08:19

小小建議,十年再長了,因為整個金融環境會變化,測三年左右就可以了。可以參考Walking Forward方法。

sjgau 發表於 12-4-10 08:28

這麼簡單的 C++ 程式設計,出來的答案是 錯的!
有人知道 為什麼嗎?
答對的,送這裡的貨幣 10元!



#include <cstdlib>
#include <iostream>
using namespace std;
// ----------------------------------------------

int main(int argc, char *argv[])
{
   int a, b, c;
   a= 30000;
   b= 80000;
   c= a*b;
   
   printf("a= %d, b= %d, c= a*b= %d \n", a, b, c);   
   system("PAUSE");
   
   return EXIT_SUCCESS;
}// end of main()

sjgau 發表於 12-4-10 08:33

(a + 1) < a


怎麼可能?

以下的程式設計,又出錯了!
知道 為什麼的,送 10元!



#include <cstdlib>
#include <iostream>

using namespace std;
// ----------------------------------------------

int main(int argc, char *argv[])
{
   int a, b;
   
   a= 10;
   b= a + 1;
   // b > a
   
   while (b > a) {
      a= a + 1;
      b= a + 1;
   }// end while
   
   // b <= a, 怎麼可能 (a + 1) <= a
   
   printf("b= a + 1= %d, a= %d \n", b, a);   
   system("PAUSE");
   
   return EXIT_SUCCESS;
}// end of main()

sjgau 發表於 12-4-10 08:40

換成 double 變數,還是 一樣

(a + 1) = a

如果有人 能夠正確回答, 為什麼?

送 10元



#include <cstdlib>
#include <iostream>

using namespace std;
// ----------------------------------------------

int main(int argc, char *argv[])
{
   double a, b;
   
   a= 3.1415926;
   b= a*1.001;
   // b > a
   
   while (b > a) {
      a= a*1.001;
      b= a + 1;
   }// end while
   
   // b <= a, 怎麼可能 (a + 1) <= a
   
   printf("b= a + 1= %.3lf, \na=      %.3lf \n", b, a);   
   system("PAUSE");
   
   return EXIT_SUCCESS;
}// end of main()

thirtycm 發表於 12-4-10 08:50

第一題是c好像要用long宣告!!

cococharles 發表於 12-4-10 08:52

sjgau 發表於 12-4-10 08:28 static/image/common/back.gif
這麼簡單的 C++ 程式設計,出來的答案是 錯的!
有人知道 為什麼嗎?
答對的,送這裡的貨幣 10元!


你的作業系統和 compiler 是32-bit or 64-bit?
(1) 32-bit : int overflow 了. max = 2,147,483,647
(2) 64-bit : 不會有錯

roder 發表於 12-4-10 08:52

sjgau 發表於 12-4-10 08:28 static/image/common/back.gif
這麼簡單的 C++ 程式設計,出來的答案是 錯的!
有人知道 為什麼嗎?
答對的,送這裡的貨幣 10元!


這題我來回答看看
因為INT的範圍是-2147483648 to 2147483647
但c的結果以超出此範圍因此會出錯...{:4_153:}

cococharles 發表於 12-4-10 08:53

sjgau 發表於 12-4-10 08:33 static/image/common/back.gif
(a + 1) < a




這也是 int overflow 的問題.

cococharles 發表於 12-4-10 08:55

sjgau 發表於 12-4-10 08:40 static/image/common/back.gif
換成 double 變數,還是 一樣

(a + 1) = a


while 一直跑, double, long double..... 都會 overflow 的.

cococharles 發表於 12-4-10 08:57

thirtycm 發表於 12-4-10 08:50 static/image/common/back.gif
第一題是c好像要用long宣告!!

long 是 4 bytes, range 也是到 2,147,483,647
int 是 system dependent, 隨著系統是 16bit, 32bit,64bit.... range 會有所不同.

sjgau 發表於 12-4-10 09:01

cococharles 發表於 12-4-10 08:52 static/image/common/back.gif
你的作業系統和 compiler 是32-bit or 64-bit?
(1) 32-bit : int overflow 了. max = 2,147,483,647
(2)...

樓上 答案正確,可以獲得 獎金十元,

可是 我還不會 轉帳,

先欠著


sjgau 發表於 12-4-10 09:04

thirtycm 發表於 12-4-10 08:50 static/image/common/back.gif
第一題是c好像要用long宣告!!

目前的 int

default 就是 long


數值的範圍是

-2147483648 到

+2147483647

a*b

a+b

a-b

超過範圍,會得到 錯誤的結果。
而且,電腦不會提供 任何的錯誤訊息,

或是任何的 警告訊息





sjgau 發表於 12-4-10 09:08

http://www.sendspace.com/file/h55g8d

台指期貨 十年的 一分鐘 K線資料
1998/07/22

到 2011/04/29

頁: [1] 2 3
查看完整版本: 我想要寫 C語言程式設計 分析十年一分鐘K線資料