此 R 套件提供了一些簡單的函數來支援與 Matchbook.com RESTful API 服務的交互作用。使用前請仔細閱讀每個功能的文件。需要註冊 Matchbook.com 帳戶才能使用此套餐。使用前請完整閱讀文件。
要安裝該軟體包需要 devtools 庫:
library(devtools)
install_github("xanadunf/matchbook")
以下兩個函數有助於帳戶會話驗證
以下功能提供了獲取有關可用運動的資訊的能力。這提供了 Matchbook 用於每項運動的 ID。透過這些,您可以獲得您感興趣的運動的所有賽事。有關這方面的更多詳細信息,請參閱 R 文件。
I 以下函數可用於取得已下注但尚未結算的任何投注的詳細資訊。可以獲得未匹配和匹配投注的詳細資訊。有關更多詳細信息,請參閱 R 文件(例如?mb_get_bets)
以下函數提供核心投注功能。
為了獲得已結算投注的詳細信息,可以使用以下功能。同樣,完整的函數參數可以在 R 文件中查看 (?mb_get_settled)
假設您已滿足先決條件,這應該可以幫助您在很短的時間內啟動並運行。讓我們在本教程中設定一個目標,對我們發現的第一場包含「man」名字的足球比賽進行投注。我們將繼續以 1.10 的賠率對主隊進行 5 歐元(或您帳戶中的任何貨幣)的後注,以徹底贏得比賽。
首先,您需要使用您的 Matchbook.com 帳戶憑證登入。
library(devtools)
install_github("xanadunf/matchbook")
library(matchbook)
username <- "my_user_name" ### replace with your username
password <- "verysafepassword" ### replace with your password
session_details <- mb_login(username,password)
由於我們投注的是足球,因此我們需要找出該運動的 id。
sport_id_data <- mb_get_sports(session_details)
sport_id_data
football_sport_id <- sport_id_data$id[which(sport_id_data$name=="Soccer")]
football_sport_id
從結果中我們可以看到足球的運動id=15。我們可以使用它來獲取包含“man”字串的球隊的任何足球賽事。
event_data <- mb_get_events(session_data=session_details,sport_ids=football_sport_id)
event_data[grep(tolower("man"), tolower(event_data$name)),]
test_event_id <- event_data$id[grep(tolower("man"), tolower(event_data$name))[1]]
test_event_id
顯然,根據您運行此命令的時間,您可能會得到很多結果,也可能沒有結果。如果您沒有找到成功的結果,請將“man”替換為您知道即將比賽的足球隊的名稱。因此,讓我們獲取此事件的所有市場數據。由於我們想對比賽結果進行投注,因此我們將嘗試提取“單勝”市場類型。
market_data <- mb_get_markets(session_data=session_details,event_id=test_event_id,include_runners=TRUE)
market_data
test_market_id <- market_data$id[market_data$'market-type'=="one_x_two"]
test_market_id
現在我們有了正確的市場,讓我們獲取該市場中所有跑步者的信息。這次,我們包含參數“include_prices=TRUE”,以便我們可以看到每個跑步者的可用價格。另外,讓我們從結果數據中選擇跑步者。
runner_data <- mb_get_runners(session_data=session_details,event_id=test_event_id,market_id=test_market_id,include_prices=TRUE)
runner_data
test_runner_id <- runner_data$id[grep("man", runner_data$name,ignore.case=TRUE)]
test_runner_id
現在我們有了所有跑步者的詳細信息,讓我們獲取我們選擇的跑步者的價格詳細信息。
prices_data <- runner_data$prices[[which(runner_data$id==test_runner_id)]]
prices_data_back <- prices_data[prices_data$side=="back",]
best_available_current_price <- min(prices_data_back$'decimal-odds') # min because we are backing, use the max if you are laying.
現在我們已經找到了可以支持的價格水平(數量也可以通過“prices_data_back$'available-amount”獲得),我們可以對我們選擇的跑步者下注。
mb_bet_place(session_data=session_details,runner_id=test_runner_id,side='back',stake=5,odds=1.10)
mb_get_bets(session_data=session_details)
下注時,檢查下注的狀態很重要。如果狀態為“已符合”,則已以提供的價格與您相符。如果是“開放”,則投注尚未完全匹配。有關投注的更多詳細信息,請查看文件:?mb_bet_place
mb_get_bets(session_data=my_session,runner_id=test_runner_id)
該軟體包正在積極開發中,歡迎回饋並提出改進建議。
請使用問題區域建立問題。
本軟體以「現況」提供,不提供任何明示或暗示的保證,包括但不限於適銷性、特定用途的適用性和不侵權的保證。 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE軟體.