自己製作免費即時股票串流報價(二)

在上一篇文章介紹製作免費即時股票串流報價的過程, 在這裡還有一些補充。如果想可以長期使用自己製作的免費即時股票串流報價, 必須留意最後的兩點。

1. 設定 XAMPP 網存伺服器程式時區 (Time Zone)

XAMPP 網存伺服器程式的預設地區和時間是在香港以外地區的, 所以用程式產生的時間並不是香港時間。要容易的監測交易時間, 最好是重新設定 XAMPP 網存伺服器程式的時區 (Time Zone)。

要設定 XAMPP 網存伺服器程式的時區是十分容易的:

i) 瀏覽至  C:\xampp\php\php.ini

ii) 用文字編寫器 (Text Editor), 例如 NotePad 開啟 php.ini 檔案。

iii) 瀏覽至 1042-1045 行:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone=Europe/Berlin

XAMPP 網存伺服器程式的預設地區和時間是 Europe/Berlin

iv) 要正確的選擇時區, 你可以瀏覽 http://us2.php.net/manual/en/timezones.php 網頁。接著選擇亞洲:

hong-kong-stock-streaming-quotes-02

尋找香港的時區:

hong-kong-stock-streaming-quotes-03

將預設的地區和時間 (Europe/Berlin) 改為 Asia/Hong_Kong:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone=Asia/Hong_Kong

v) 停止 (Stop)和重新啟動 (Restart) XAMPP 網存伺服器。

XAMPP 網存伺服器現在的時區是 Asia/Hong_Kong 了。

2.在股票市場的交易時間才需有串流功能

留意香港股票市場的交易時間:

上午: 9:30AM – 12:00PM
下午: 1:00PM – 04:00PM

如果 XAMPP 網存伺服器的時區已經設定了 Asia/Hong_Kong, 這樣就很容易控制程式在交易時間才需要有股票串流的功能。

如果在使用程式時並不是交易時間, 程式只需要運行一次, 將對上一個交易時段收市前的資料找回來便可以了, 然後用命令停止程式繼續執行串流的功能, 不要浪費資源。最好是在串流報價畫面出現一些提示字句, 例如: 股票市場現正休市, 如下圗所示:

hong-kong-stock-streaming-quotes-01

3. 股票串流報價只供自己使用

如果想可以長期使用自己製作的免費即時股票串流報價, 最重要的一點是只供自己使用。

4. 串流時間不要過頻

為免即時報價網站產生過大流量, 串流時間千萬不要過頻。建議起碼為五秒以上。

 

12 Responses to 自己製作免費即時股票串流報價(二)

  1. yuen says:

    10天平均移動線買賣模擬軟件,想問依家仲買唔買呢?

    • Alex says:

      Hi Yuen,

      10天移動平均線模擬軟件仍然在架, 歡迎購買。

      Best regards

      Alex

  2. YC Yuen says:

    有無股票串流報價軟件買

    • Alex says:

      Hi YC,

      正在考慮中。

  3. Truman says:

    Hi Alex, 請問有冇辦法當 數據變動時, 就閃燈?
    我知道可以用jquery的highlight effect來做到效果
    但如何讓網頁自動檢查數據變動並作出指定動作?
    我想到的概念是:

    var oldValue = document.getElementById("value")
    // 攝取新的數據......(這時#id的數據應該改變了)
    if (oldValue !== document.getElementById("value")) {
    $(this).effect("highlight", {}, 3000);

    附上 half baked code, 多多見諒 🙂
    code 設定當網頁載入,就每1.5秒重新攝取數據
    https://drive.google.com/file/d/0B1vcggNzsCsxM0RtaFFFQkNPZEk/edit?usp=sharing

    • Alex says:

      Hi Truman,

      ## 如何讓網頁自動檢查數據變動並作出指定動作?
      程式本身就是應該檢查數據變動才作出相關指定動作, 否則如果知道 price change 是上升, 下跌或沒有改變。所以並不太明白這個問題。

  4. Truman says:

    還有一個問題就是買賣價計算有浮點數問題
    我用了 ((+ x) * 1000 – (+ y) * 1000) / 1000 都解決不到
    試過.toFixed(3), 不知為何發生錯誤

    • Alex says:

      Hi Truman,

      我都是用 .toFixed(3 )解決浮點數問題, 如下:

      // Calculate the price change (current price – previous close price)
      $priceChange = data[0][1] – data[0][4];
      $priceChange = $priceChange.toFixed(3);

      // Calculate the price change %
      // ($priceChange/previous close price)*100
      $priceChangePercent = ($priceChange / data[0][4]) * 100
      $priceChangePercent = $priceChangePercent.toFixed(3);

  5. Truman says:

    我解決浮點數問題了,總算大功告成!
    我用xampp開伺服器並連接localhost成功執行
    但是用local ip(192.168.X.X)則不成功
    把網頁放上web hosting都不成功!
    請問有解決方法嗎?
    http://i.imgur.com/pu2uVJ6.png

    • Alex says:

      Hi Truman,

      1. 只是一簡單網頁, 把網頁放上 web hosting 沒可能不成功的。

      2. 用 local IP address 也應該沒有問題。 我試用我電腦的 IP (192.168.1.100)去看看, 網頁也正常工作。

      你可以考慮用電郵寄你的 Files 給我試試是否一樣。

  6. Truman says:

    Hi Alex,
    請問你的email是什麼?
    這是我的email: truman@boun.cr, 你發一個空白郵件, 然後我寄給你
    Thank you!

  7. Truman says:

    我找到原因了,檢查了上萬行script,最後發現原來是第一行犯了低級錯誤 哈哈!
    var url = "http://localhost/stock/csv2json.php";

Leave a Reply

Your email address will not be published. Required fields are marked *