首頁 >後端開發 >php教程 >php如何撮合交易?

php如何撮合交易?

WBOY
WBOY原創
2016-08-04 09:19:382205瀏覽

舉個場景


  • A用戶今天花了2塊錢買了100瓶水;行情現在是2快錢;然後掛單:等行情漲到2.5塊錢賣掉100瓶。 A等著人來買就行了

  • B用戶:現在行情假設3塊;然後掛單2.5塊買50瓶。

問題

PHP使用隊列如何實現B用戶自動買了A用戶的50瓶。 B的交易完成。 A的交易因為還沒賣完,還繼續掛單;如何實現N用戶的這種交易。

說明

  • 上面的例子理解成股票掛單就好理解了。

回覆內容:

舉個場景


  • A用戶今天花了2塊錢買了100瓶水;行情現在是2快錢;然後掛單:等行情漲到2.5塊錢賣掉100瓶。 A等著人來買就行了

  • B用戶:現在行情假設3塊;然後掛單2.5塊買50瓶。

問題

PHP使用隊列如何實現B用戶自動買了A用戶的50瓶。 B的交易完成。 A的交易因為還沒賣完,還繼續掛單;如何實現N用戶的這種交易。

說明

  • 上面的例子理解成股票掛單就好理解了。

這個問題跟語言沒有關係。

需要兩個隊列,一個用來儲存“買進”,一個用來儲存“賣出”,佇列中按照價格排序,相同價格按照時間排序。

然後程序不斷的對比買進的最高價和賣出的最低價,如果兩者有重疊則進行交易,交易價格按賣出價計算。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn