Ccxt: Kraken-์ตœ์†Œ ์ฃผ๋ฌธ์„ ์–ป์œผ๋ ค๊ณ  ํ•  ๋•Œ 403 ๊ธˆ์ง€ ์˜ค๋ฅ˜

์— ๋งŒ๋“  2020๋…„ 04์›” 14์ผ  ยท  7์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ccxt/ccxt

์•ˆ๋…•ํ•˜์„ธ์š”,

ํฌ๋ผ์ผ„ ํ†ตํ•ฉ์ด ์—…๋ฐ์ดํŠธ ์ดํ›„ ๋‚˜๋ฅผ ์œ„ํ•ด ๊นจ์ง„ ๊ฒƒ ๊ฐ™๋‹ค : https://github.com/ccxt/ccxt/commit/89ee033e90c10b500c098ce3ed5a440c39c33dad#diff -5e85c8f10126d08bcbd8c3138002c7c0
์ปค๋ฐ‹์—์„œ "fetchMinLimitOrder"๊ฐ€ true๋กœ ์„ค์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ Kraken์—๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ํŽ˜์ด์ง€์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•ด ์›น ์‚ฌ์ดํŠธ์—์„œ ๋ณด์•ˆ ๋ฌธ์ž๋ฅผ ์ž…๋ ฅํ•ด์•ผํ•˜๋Š” ๋ณดํ˜ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ณดํ˜ธ๊ฐ€ ํ™œ์„ฑํ™”๋˜๋ฉด Kraken์€ ์‹œ์žฅ์„๋กœ๋“œํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์ƒ๊ฐ์ด ํ‹€๋ ธ๋Š” ์ง€, ๊ทธ๋ฆฌ๊ณ  ์ˆ˜์ •์ด ๊ฐ€๋Šฅํ•œ์ง€ ์•Œ๋ ค์ฃผ์„ธ์š”.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค,
์•Œ๋ ‰์Šค

duplicate question

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@alextousss ์œ„์˜ Kroitor์˜ ์‘๋‹ต์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด Kraken์˜ ์ตœ์†Œ ์ฃผ๋ฌธ ํฌ๊ธฐ๋Š” Kraken ์ง€์› ํŽ˜์ด์ง€ ( https://support.kraken.com/hc/en-us/articles/205893708-What-is-the-minimum-) ๋ฅผ ํ†ตํ•ด ๊ฒ€์ƒ‰๋ฉ๋‹ˆ๋‹ค.

Kraken ์ง€์› ํŽ˜์ด์ง€์˜ html ์ฝ”๋“œ๊ฐ€ ์บก์ฒ˜๋˜๊ณ  html ํƒœ๊ทธ <td class="wysiwyg-text-align-right"> ๊ฐ€ ์ตœ์†Œ ์ฃผ๋ฌธ์„ ์œ ๋„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋ฐฐ์—ด๋กœ ๋ถ„ํ•ด๋ฉ๋‹ˆ๋‹ค.

๋‚˜์˜ ๋‹จ๊ธฐ ์ˆ˜์ • (Kraken์ด REST API AssetPairs ๋์ ์— ์ตœ์†Œ ์ฃผ๋ฌธ ํฌ๊ธฐ๋ฅผ ์ถ”๊ฐ€ ํ•  ๋•Œ๊นŒ์ง€)์€ ccxt / kraken.php ํŒŒ์ผ์˜ fetch_min_order_amounts () ํ•จ์ˆ˜์— ์ง์ ‘ html ์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์—ˆ์Šต๋‹ˆ๋‹ค.

$html = $this->zendeskGet205893708WhatIsTheMinimumOrderSize (); ๋Œ€์‹ 

๊ด€๋ จ ํ…์ŠคํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์› ํŽ˜์ด์ง€์˜ ํ…์ŠคํŠธ๋กœ ๋ณ€์ˆ˜ $ html์„ ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

kraken ์ง€์› ํŽ˜์ด์ง€์—์„œ ๋ณต์‚ฌ ํ•œ ๊ด€๋ จ html ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋‹ค์Œ ํ•จ์ˆ˜๋ฅผ ๊ฐ„๋‹จํžˆ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

public function Minimum_Order_Size_Hard_Code(){

return '<td><strong>Base currency</strong></td>
<td class="wysiwyg-text-align-right"><strong>Order minimum</strong></td>
</tr>
<tr>
<td>Algorand</td>
<td class="wysiwyg-text-align-right">50 ALGO</td>
</tr>
<tr>
<td>Augur</td>
<td class="wysiwyg-text-align-right">0.3 REP</td>
</tr>
<tr>
<td>Basic Attention Token</td>
<td class="wysiwyg-text-align-right">50 BAT</td>
</tr>
<tr>
<td>Bitcoin</td>
<td class="wysiwyg-text-align-right">0.002 XBT</td>
</tr>
<tr>
<td>Bitcoin Cash</td>
<td class="wysiwyg-text-align-right">0.000002 BCH</td>
</tr>
<tr>
<td>Cardano</td>
<td class="wysiwyg-text-align-right">1 ADA</td>
</tr>
<tr>
<td>Chainlink</td>
<td class="wysiwyg-text-align-right">10 LINK</td>
</tr>
<tr>
<td>Cosmos</td>
<td class="wysiwyg-text-align-right">1 ATOM</td>
</tr>
<tr>
<td>DAI</td>
<td class="wysiwyg-text-align-right">10 DAI</td>
</tr>
<tr>
<td>Dash</td>
<td class="wysiwyg-text-align-right">0.03 DASH</td>
</tr>
<tr>
<td>Dogecoin</td>
<td class="wysiwyg-text-align-right">3000 XDG</td>
</tr>
<tr>
<td>EOS</td>
<td class="wysiwyg-text-align-right">3 EOS</td>
</tr>
<tr>
<td>Ethereum</td>
<td class="wysiwyg-text-align-right">0.02 ETH</td>
</tr>
<tr>
<td>Ethereum Classic</td>
<td class="wysiwyg-text-align-right">0.3 ETC</td>
</tr>
<tr>
<td>Gnosis</td>
<td class="wysiwyg-text-align-right">0.02 GNO</td>
</tr>
<tr>
<td>ICON</td>
<td class="wysiwyg-text-align-right">50 ICX</td>
</tr>
<tr>
<td>Lisk</td>
<td class="wysiwyg-text-align-right">10 LSK</td>
</tr>
<tr>
<td>Litecoin</td>
<td class="wysiwyg-text-align-right">0.1 LTC</td>
</tr>
<tr>
<td>Monero</td>
<td class="wysiwyg-text-align-right">0.1 XMR</td>
</tr>
<tr>
<td>Nano</td>
<td class="wysiwyg-text-align-right">10 NANO</td>
</tr>
<tr>
<td>OmiseGO</td>
<td class="wysiwyg-text-align-right">10 OMG</td>
</tr>
<tr>
<td>PAX Gold</td>
<td class="wysiwyg-text-align-right">0.01 PAXG</td>
</tr>
<tr>
<td>QTUM</td>
<td class="wysiwyg-text-align-right">0.1 QTUM</td>
</tr>
<tr>
<td>Ripple</td>
<td class="wysiwyg-text-align-right">30 XRP</td>
</tr>
<tr>
<td>Siacoin</td>
<td class="wysiwyg-text-align-right">5000 SC</td>
</tr>
<tr>
<td>Stellar Lumens</td>
<td class="wysiwyg-text-align-right">30 XLM</td>
</tr>
<tr>
<td>Tether</td>
<td class="wysiwyg-text-align-right">5 USDT</td>
</tr>
<tr>
<td>Tezos</td>
<td class="wysiwyg-text-align-right">1 XTZ</td>
</tr>
<tr>
<td>Tron</td>
<td class="wysiwyg-text-align-right">500 TRX</td>
</tr>
<tr>
<td>USD Coin</td>
<td class="wysiwyg-text-align-right">5 USDC</td>
</tr>
<tr>
<td>Watermelon</td>
<td class="wysiwyg-text-align-right">0.1 MLN</td>
</tr>
<tr>
<td>Waves</td>
<td class="wysiwyg-text-align-right">10 WAVES</td>
</tr>
<tr>
<td>Zcash</td>
<td class="wysiwyg-text-align-right">0.03 ZEC</td>
</tr>
<tr>
<td>Euro</td>
<td class="wysiwyg-text-align-right">10 EUR</td>
</tr>
<tr>
<td>US Dollar</td>
<td class="wysiwyg-text-align-right">10 USD</td>
</tr>
<tr>
<td>Great British Pound</td>
<td class="wysiwyg-text-align-right">10 GBP</td>
</tr>
</tbody>';
}

๊ทธ๋Ÿฐ ๋‹ค์Œ ์œ„์˜ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ccxt / kraken.php ํŒŒ์ผ์˜ fetch_min_order_amounts () ํ•จ์ˆ˜์—์„œ $ html ๋ณ€์ˆ˜๋ฅผ ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

public function fetch_min_order_amounts() {
$html =  $this->Minimum_Order_Size_Hard_Code();
...

ccxt๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๋ฉด ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์ž๋™์œผ๋กœ ์†์‹ค๋˜์ง€๋งŒ ์ž‘๋™ํ•˜๋ฏ€๋กœ์ด ์ˆ˜์ •์€ ๋ฌผ๋ก  ์ด์ƒ์ ์ด์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ์ด ์ˆ˜์ • ์‚ฌํ•ญ์€ ์ฝ”๋“œ์˜ ์ค‘์š”ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋‚˜ํƒ€๋‚ด์ง€ ์•Š์œผ๋ฉฐ ํ–ฅํ›„ ์—…๋ฐ์ดํŠธ์— ์‰ฝ๊ฒŒ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  7 ๋Œ“๊ธ€

์ด๊ฒƒ์€ ์ด์ „์—๋ณด๊ณ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Kraken์˜ ๊ณต์‹ ๋‹ต๋ณ€ :

์šฐ๋ฆฌ๋Š” ์ง€์› ํŽ˜์ด์ง€์˜ ๋ณด์•ˆ ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•ด ์ง€์› ํŽ˜์ด์ง€๋ฅผ ํ†ตํ•ด ์ตœ์†Œ ์ฃผ๋ฌธ ํฌ๊ธฐ๋ฅผ ๊ฒ€์ƒ‰ ํ•  ์ˆ˜ ์—†์—ˆ์„ ๋•Œ CCXT๊ฐ€ ๊ฒช์€ ์ตœ๊ทผ ๋ฌธ์ œ๋ฅผ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. REST API ๊ฐœ๋ฐœ์ž๋Š” ์ตœ์†Œ ์ฃผ๋ฌธ ํฌ๊ธฐ๋ฅผ REST API AssetPairs ์—”๋“œ ํฌ์ธํŠธ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ณผ์ •์— ์žˆ์œผ๋ฉฐ,์ด๋ฅผ ํ†ตํ•ด ์ตœ์†Œ ์ฃผ๋ฌธ ํฌ๊ธฐ๋ฅผ๋ณด๋‹ค ํšจ์œจ์ ์ด๊ณ  ์•ˆ์ •์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์—…๋ฐ์ดํŠธ์— ๋Œ€ํ•œ ์˜ˆ์ƒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ๋‚ ์งœ๋Š” ์•„์ง ์ •ํ•ด์ง€์ง€ ์•Š์•˜์ง€๋งŒ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์ถ”์ ํ•˜๊ณ  ๋” ๋งŽ์€ ์ •๋ณด๊ฐ€ ์ œ๊ณต๋˜๋ฉด ์•Œ๋ ค ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ทธ๋™์•ˆ fetchMinOrderAmounts ์˜ต์…˜์„ false ๋กœ ์„ค์ •ํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

exchange = ccxt.kraken({
    'enableRateLimit': True,
    'options': {  # โ†--------------------- inside 'options' subkey
        'fetchMinOrderAmounts': False,  # โ†---------- set to False 
    }
})

์ด๋ ‡๊ฒŒํ•˜๋ฉด ์ตœ์†Œ ์ œํ•œ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํšจ๊ณผ์ ์œผ๋กœ ์†์‹ค๋˜์ง€๋งŒ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์€ ๊ณ„์† ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์ด ์—†์œผ๋ฉด ์•Œ๋ ค์ฃผ์„ธ์š”.

์ค‘๋ณต์œผ๋กœ ์ธํ•ด ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ œ ๋ฌธ์ œ๋ฅผ ์ค‘๋ณต์œผ๋กœ ํ‘œ์‹œํ–ˆ์„ ๋•Œ ๋ฌธ์ œ ํƒญ์—์„œ "Kraken"๋งŒ ๊ฒ€์ƒ‰ํ–ˆ์Šต๋‹ˆ๋‹ค (๋ฌธ์ œ์˜ ์ฒซ ํŽ˜์ด์ง€์— Kraken์— ๋Œ€ํ•œ ์–ธ๊ธ‰์ด ์—†์Œ).

๊ทธ๋Ÿฌ๋‚˜ ๋„ค, ๊ทธ๊ฒƒ์€ ๋‚ด๊ฐ€ ์ƒ๊ฐํ•œ ๋ชจ๋“  ๊ฒƒ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์–ธ๊ธ‰ ํ•œ ์ปค๋ฐ‹ ์ด์ „ ๋ฒ„์ „์œผ๋กœ ๋Œ์•„๊ฐ€์„œ ํ”„๋กœ๋•์…˜ ์‹œ์Šคํ…œ์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์žฅ๊ธฐ์ ์œผ๋กœ fetchMinOrderAmounts๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

๊ท€ํ•˜์˜ ๋‹ต๋ณ€๊ณผ ccxt์— ๋Œ€ํ•œ ํญ ๋„“์€ ์ฐธ์—ฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
100 ๊ฐœ์˜ ์•”ํ˜ธ ํ™”ํ ๊ฑฐ๋ž˜์†Œ์˜ API๋ฅผ ํ†ตํ•ฉํ•˜๋Š” ๊ฒƒ์€ ์‰ฌ์šด ์ผ์ด ์•„๋‹ˆ์ง€๋งŒ ํ›Œ๋ฅญํ•˜๊ฒŒ ํ•ด๋ƒˆ์Šต๋‹ˆ๋‹ค. ์˜คํ”„ ๋ชจ์ž.

@alextousss ํ”ผ๋“œ๋ฐฑ์— ๋Œ€ํ•œ thx, ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ์ถ”๊ฐ€ ์งˆ๋ฌธ์ด ์žˆ์œผ๋ฉด ๋ง์„ค์ด์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ์—…๋ฐ์ดํŠธ๋ฅผ ๊ณ„์†ํ•˜๊ณ  Kraken ์ธก์—์„œ ์ˆ˜์ •๋˜๋ฉด ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค.

@alextousss ์œ„์˜ Kroitor์˜ ์‘๋‹ต์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด Kraken์˜ ์ตœ์†Œ ์ฃผ๋ฌธ ํฌ๊ธฐ๋Š” Kraken ์ง€์› ํŽ˜์ด์ง€ ( https://support.kraken.com/hc/en-us/articles/205893708-What-is-the-minimum-) ๋ฅผ ํ†ตํ•ด ๊ฒ€์ƒ‰๋ฉ๋‹ˆ๋‹ค.

Kraken ์ง€์› ํŽ˜์ด์ง€์˜ html ์ฝ”๋“œ๊ฐ€ ์บก์ฒ˜๋˜๊ณ  html ํƒœ๊ทธ <td class="wysiwyg-text-align-right"> ๊ฐ€ ์ตœ์†Œ ์ฃผ๋ฌธ์„ ์œ ๋„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋ฐฐ์—ด๋กœ ๋ถ„ํ•ด๋ฉ๋‹ˆ๋‹ค.

๋‚˜์˜ ๋‹จ๊ธฐ ์ˆ˜์ • (Kraken์ด REST API AssetPairs ๋์ ์— ์ตœ์†Œ ์ฃผ๋ฌธ ํฌ๊ธฐ๋ฅผ ์ถ”๊ฐ€ ํ•  ๋•Œ๊นŒ์ง€)์€ ccxt / kraken.php ํŒŒ์ผ์˜ fetch_min_order_amounts () ํ•จ์ˆ˜์— ์ง์ ‘ html ์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์—ˆ์Šต๋‹ˆ๋‹ค.

$html = $this->zendeskGet205893708WhatIsTheMinimumOrderSize (); ๋Œ€์‹ 

๊ด€๋ จ ํ…์ŠคํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์› ํŽ˜์ด์ง€์˜ ํ…์ŠคํŠธ๋กœ ๋ณ€์ˆ˜ $ html์„ ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

kraken ์ง€์› ํŽ˜์ด์ง€์—์„œ ๋ณต์‚ฌ ํ•œ ๊ด€๋ จ html ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋‹ค์Œ ํ•จ์ˆ˜๋ฅผ ๊ฐ„๋‹จํžˆ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

public function Minimum_Order_Size_Hard_Code(){

return '<td><strong>Base currency</strong></td>
<td class="wysiwyg-text-align-right"><strong>Order minimum</strong></td>
</tr>
<tr>
<td>Algorand</td>
<td class="wysiwyg-text-align-right">50 ALGO</td>
</tr>
<tr>
<td>Augur</td>
<td class="wysiwyg-text-align-right">0.3 REP</td>
</tr>
<tr>
<td>Basic Attention Token</td>
<td class="wysiwyg-text-align-right">50 BAT</td>
</tr>
<tr>
<td>Bitcoin</td>
<td class="wysiwyg-text-align-right">0.002 XBT</td>
</tr>
<tr>
<td>Bitcoin Cash</td>
<td class="wysiwyg-text-align-right">0.000002 BCH</td>
</tr>
<tr>
<td>Cardano</td>
<td class="wysiwyg-text-align-right">1 ADA</td>
</tr>
<tr>
<td>Chainlink</td>
<td class="wysiwyg-text-align-right">10 LINK</td>
</tr>
<tr>
<td>Cosmos</td>
<td class="wysiwyg-text-align-right">1 ATOM</td>
</tr>
<tr>
<td>DAI</td>
<td class="wysiwyg-text-align-right">10 DAI</td>
</tr>
<tr>
<td>Dash</td>
<td class="wysiwyg-text-align-right">0.03 DASH</td>
</tr>
<tr>
<td>Dogecoin</td>
<td class="wysiwyg-text-align-right">3000 XDG</td>
</tr>
<tr>
<td>EOS</td>
<td class="wysiwyg-text-align-right">3 EOS</td>
</tr>
<tr>
<td>Ethereum</td>
<td class="wysiwyg-text-align-right">0.02 ETH</td>
</tr>
<tr>
<td>Ethereum Classic</td>
<td class="wysiwyg-text-align-right">0.3 ETC</td>
</tr>
<tr>
<td>Gnosis</td>
<td class="wysiwyg-text-align-right">0.02 GNO</td>
</tr>
<tr>
<td>ICON</td>
<td class="wysiwyg-text-align-right">50 ICX</td>
</tr>
<tr>
<td>Lisk</td>
<td class="wysiwyg-text-align-right">10 LSK</td>
</tr>
<tr>
<td>Litecoin</td>
<td class="wysiwyg-text-align-right">0.1 LTC</td>
</tr>
<tr>
<td>Monero</td>
<td class="wysiwyg-text-align-right">0.1 XMR</td>
</tr>
<tr>
<td>Nano</td>
<td class="wysiwyg-text-align-right">10 NANO</td>
</tr>
<tr>
<td>OmiseGO</td>
<td class="wysiwyg-text-align-right">10 OMG</td>
</tr>
<tr>
<td>PAX Gold</td>
<td class="wysiwyg-text-align-right">0.01 PAXG</td>
</tr>
<tr>
<td>QTUM</td>
<td class="wysiwyg-text-align-right">0.1 QTUM</td>
</tr>
<tr>
<td>Ripple</td>
<td class="wysiwyg-text-align-right">30 XRP</td>
</tr>
<tr>
<td>Siacoin</td>
<td class="wysiwyg-text-align-right">5000 SC</td>
</tr>
<tr>
<td>Stellar Lumens</td>
<td class="wysiwyg-text-align-right">30 XLM</td>
</tr>
<tr>
<td>Tether</td>
<td class="wysiwyg-text-align-right">5 USDT</td>
</tr>
<tr>
<td>Tezos</td>
<td class="wysiwyg-text-align-right">1 XTZ</td>
</tr>
<tr>
<td>Tron</td>
<td class="wysiwyg-text-align-right">500 TRX</td>
</tr>
<tr>
<td>USD Coin</td>
<td class="wysiwyg-text-align-right">5 USDC</td>
</tr>
<tr>
<td>Watermelon</td>
<td class="wysiwyg-text-align-right">0.1 MLN</td>
</tr>
<tr>
<td>Waves</td>
<td class="wysiwyg-text-align-right">10 WAVES</td>
</tr>
<tr>
<td>Zcash</td>
<td class="wysiwyg-text-align-right">0.03 ZEC</td>
</tr>
<tr>
<td>Euro</td>
<td class="wysiwyg-text-align-right">10 EUR</td>
</tr>
<tr>
<td>US Dollar</td>
<td class="wysiwyg-text-align-right">10 USD</td>
</tr>
<tr>
<td>Great British Pound</td>
<td class="wysiwyg-text-align-right">10 GBP</td>
</tr>
</tbody>';
}

๊ทธ๋Ÿฐ ๋‹ค์Œ ์œ„์˜ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ccxt / kraken.php ํŒŒ์ผ์˜ fetch_min_order_amounts () ํ•จ์ˆ˜์—์„œ $ html ๋ณ€์ˆ˜๋ฅผ ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

public function fetch_min_order_amounts() {
$html =  $this->Minimum_Order_Size_Hard_Code();
...

ccxt๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๋ฉด ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์ž๋™์œผ๋กœ ์†์‹ค๋˜์ง€๋งŒ ์ž‘๋™ํ•˜๋ฏ€๋กœ์ด ์ˆ˜์ •์€ ๋ฌผ๋ก  ์ด์ƒ์ ์ด์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ์ด ์ˆ˜์ • ์‚ฌํ•ญ์€ ์ฝ”๋“œ์˜ ์ค‘์š”ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋‚˜ํƒ€๋‚ด์ง€ ์•Š์œผ๋ฉฐ ํ–ฅํ›„ ์—…๋ฐ์ดํŠธ์— ์‰ฝ๊ฒŒ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@ mjoh090 ๋„ค, ์ œํ•œ์„ ํ•˜๋“œ ์ฝ”๋”ฉํ•˜๋Š” ๊ฒƒ์€ ์ •๋ณด๊ฐ€ ์ •๋ง๋กœ ํ•„์š”ํ•  ๋•Œ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

๋” ๋„“์€ ๊ด€์ ์—์„œ ๋ณผ ๋•Œ ๊ณต์‹์ ์ด๊ณ  ์•ˆ์ •์ ์ธ API์— ์˜์กดํ•˜์ง€ ์•Š๋Š” ์ด๋Ÿฌํ•œ ์ข…๋ฅ˜์˜ ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” "์•ˆ์ • ๋ชจ๋“œ"๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ccxt๋Š” ๋‹ค๋ฅธ ๊ตํ™˜์— ๋Œ€ํ•œ ๋„์›€๋ง ํŽ˜์ด์ง€๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•ฉ๋‹ˆ๊นŒ? ์ด ๋ฌธ์ œ๋Š” ๋‚ด๊ฐ€ ์ž˜ ๊ธฐ์–ตํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์ด๋ฏธ ์ˆ˜์ˆ˜๋ฃŒ๋กœ ์ธํ•ด ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ ์‹ฌ๊ฐํ•œ ๋‘ํ†ต์„ ์ผ์œผ์ผฐ์Šต๋‹ˆ๋‹ค.
๋‹น์‹ ์ด ๊ทธ๊ฒƒ์„ ๋งŒ๋“ค๋ฉด ๋” ๋‚˜์€ ์ˆ˜๋ฉด์„ ์ทจํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค ;-)

@alextousss ์˜ˆ, ์ผ๋ฐ˜์ ์œผ๋กœ ์šฐ๋ฆฌ๋Š” ๋ชจ๋“  "๋น„๊ณต์‹์  ์ธ"์—”๋“œ ํฌ์ธํŠธ๋ฅผ ์„ ํƒ ์‚ฌํ•ญ์œผ๋กœ ๋งŒ๋“ค๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์ง€๋งŒ ํŒŒ์ƒ ๋œ ๊ฑฐ๋ž˜์†Œ์— ์—ฌ์ „ํžˆ ๋ช‡ ๊ฐ€์ง€ ๋‹จ์ ์ด ๋‚จ์•„์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์„ ์ •๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์ตœ์„ ์„ ๋‹คํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. Kraken (1.26.20์—์„œ)์— ๋Œ€ํ•ด์ด ์˜ต์…˜์„ ํ•ด์ œ ํ–ˆ์œผ๋ฏ€๋กœ ์ด์ œ ํ•ด๋‹น ์˜ต์…˜์€ ๊ธฐ๋ณธ์ ์œผ๋กœ false ์ž…๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰