正在显示
5 个修改的文件
包含
59 行增加
和
0 行删除
| @@ -739,6 +739,20 @@ class CmBroker | @@ -739,6 +739,20 @@ class CmBroker | ||
| 739 | $newKlines = array_reverse($newKlines); | 739 | $newKlines = array_reverse($newKlines); |
| 740 | return $newKlines; | 740 | return $newKlines; |
| 741 | } | 741 | } |
| 742 | + if ($this->plat == self::PLAT_BINANCE) { | ||
| 743 | + $res = $this->exBroker->getKlines($symbolOri, $peroidOri, $limit); | ||
| 744 | + if ($res['code'] != 0) { | ||
| 745 | + return []; | ||
| 746 | + } | ||
| 747 | + $newKlines = []; | ||
| 748 | + foreach ($res['data'] as $key => $value) { | ||
| 749 | + $kline = Kline::transferBinanceRest($value); | ||
| 750 | + $newKlines[] = $kline; | ||
| 751 | + } | ||
| 752 | + //把 $newKlines 倒序 | ||
| 753 | + $newKlines = array_reverse($newKlines); | ||
| 754 | + return $newKlines; | ||
| 755 | + } | ||
| 742 | return []; | 756 | return []; |
| 743 | } | 757 | } |
| 744 | public function initPositions() | 758 | public function initPositions() |
| @@ -37,6 +37,13 @@ class Api | @@ -37,6 +37,13 @@ class Api | ||
| 37 | $method = "GET"; | 37 | $method = "GET"; |
| 38 | return $this->request($method, $url, $params); | 38 | return $this->request($method, $url, $params); |
| 39 | } | 39 | } |
| 40 | + //获取k线 | ||
| 41 | + public function klines($params) | ||
| 42 | + { | ||
| 43 | + $url = "/fapi/v1/klines"; | ||
| 44 | + $method = "GET"; | ||
| 45 | + return $this->request($method, $url, $params); | ||
| 46 | + } | ||
| 40 | 47 | ||
| 41 | //-------private interface ------------ | 48 | //-------private interface ------------ |
| 42 | //获取用户监听key | 49 | //获取用户监听key |
| @@ -164,4 +164,21 @@ class ExBroker | @@ -164,4 +164,21 @@ class ExBroker | ||
| 164 | $res = $this->api->symbolConfig(['symbol' => $symbol]); | 164 | $res = $this->api->symbolConfig(['symbol' => $symbol]); |
| 165 | return $res; | 165 | return $res; |
| 166 | } | 166 | } |
| 167 | + //获取k线 | ||
| 168 | + public function getKlines($symbol, $interval, $limit = 200, $start = '', $end = '') | ||
| 169 | + { | ||
| 170 | + $params = [ | ||
| 171 | + 'symbol' => $symbol, | ||
| 172 | + 'interval' => $interval, | ||
| 173 | + 'limit' => $limit, | ||
| 174 | + ]; | ||
| 175 | + if ($start) { | ||
| 176 | + $params['startTime'] = $start; | ||
| 177 | + } | ||
| 178 | + if ($end) { | ||
| 179 | + $params['endTime'] = $end; | ||
| 180 | + } | ||
| 181 | + $res = $this->api->klines($params); | ||
| 182 | + return $res; | ||
| 183 | + } | ||
| 167 | } | 184 | } |
| @@ -14,4 +14,12 @@ class ApiInfo | @@ -14,4 +14,12 @@ class ApiInfo | ||
| 14 | $this->secret = $secret; | 14 | $this->secret = $secret; |
| 15 | $this->passphrase = $passphrase; | 15 | $this->passphrase = $passphrase; |
| 16 | } | 16 | } |
| 17 | + public function toArray() | ||
| 18 | + { | ||
| 19 | + return [ | ||
| 20 | + 'key' => $this->key, | ||
| 21 | + 'secret' => $this->secret, | ||
| 22 | + 'passphrase' => $this->passphrase, | ||
| 23 | + ]; | ||
| 24 | + } | ||
| 17 | } | 25 | } |
| @@ -71,6 +71,19 @@ class Kline | @@ -71,6 +71,19 @@ class Kline | ||
| 71 | $isFinal = $kline['x']; | 71 | $isFinal = $kline['x']; |
| 72 | return new Kline($time, $open, $high, $low, $close, $vol, $volQuote, $uts, $isFinal); | 72 | return new Kline($time, $open, $high, $low, $close, $vol, $volQuote, $uts, $isFinal); |
| 73 | } | 73 | } |
| 74 | + public static function transferBinanceRest($data) | ||
| 75 | + { | ||
| 76 | + $time = $data[0]; | ||
| 77 | + $open = $data[1]; | ||
| 78 | + $high = $data[2]; | ||
| 79 | + $low = $data[3]; | ||
| 80 | + $close = $data[4]; | ||
| 81 | + $vol = $data[5]; | ||
| 82 | + $volQuote = $data[7]; | ||
| 83 | + $uts = $data[0]; | ||
| 84 | + $isFinal = true; | ||
| 85 | + return new Kline($time, $open, $high, $low, $close, $vol, $volQuote, $uts, $isFinal); | ||
| 86 | + } | ||
| 74 | public static function transferBybit($data) | 87 | public static function transferBybit($data) |
| 75 | { | 88 | { |
| 76 | $kline = $data['data'][0]; | 89 | $kline = $data['data'][0]; |
-
请 注册 或 登录 后发表评论