MCPcopy Index your code
hub / github.com/ccxt/ccxt / fetchTrades

Method fetchTrades

java/lib/src/main/java/io/github/ccxt/exchanges/CexCore.java:685–735  ·  view source on GitHub ↗

@method @name cex#fetchTrades @description get the list of most recent trades for a particular symbol @see https://trade.cex.io/docs/#rest-public-api-calls-trade-history @param {string} symbol unified symbol of the market to fetch trades for @param {int} [since] timestamp in ms of the earliest trade

(Object symbol, Object... optionalArgs)

Source from the content-addressed store, hash-verified

683 * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=public-trades}
684 */
685 public java.util.concurrent.CompletableFuture<Object> fetchTrades(Object symbol, Object... optionalArgs)
686 {
687
688 return java.util.concurrent.CompletableFuture.supplyAsync(() -> {
689
690 Object since = Helpers.getArg(optionalArgs, 0, null);
691 Object limit = Helpers.getArg(optionalArgs, 1, null);
692 Object parameters = Helpers.getArg(optionalArgs, 2, new java.util.HashMap<String, Object>() {{}});
693 (this.loadMarkets()).join();
694 Object market = this.market(symbol);
695 Object request = new java.util.HashMap<String, Object>() {{
696 put( "pair", Helpers.GetValue(market, "id") );
697 }};
698 if (Helpers.isTrue(!Helpers.isEqual(since, null)))
699 {
700 Helpers.addElementToObject(request, "fromDateISO", this.iso8601(since));
701 }
702 Object until = null;
703 var untilparametersVariable = this.handleParamInteger2(parameters, "until", "till");
704 until = ((java.util.List<Object>) untilparametersVariable).get(0);
705 parameters = ((java.util.List<Object>) untilparametersVariable).get(1);
706 if (Helpers.isTrue(!Helpers.isEqual(until, null)))
707 {
708 Helpers.addElementToObject(request, "toDateISO", this.iso8601(until));
709 }
710 if (Helpers.isTrue(!Helpers.isEqual(limit, null)))
711 {
712 Helpers.addElementToObject(request, "pageSize", Helpers.mathMin(limit, 10000)); // has a bug, still returns more trades
713 }
714 Object response = (this.publicPostGetTradeHistory(this.extend(request, parameters))).join();
715 //
716 // {
717 // "ok": "ok",
718 // "data": {
719 // "pageSize": "10",
720 // "trades": [
721 // {
722 // "tradeId": "1728630559823-0",
723 // "dateISO": "2024-10-11T07:09:19.823Z",
724 // "side": "SELL",
725 // "price": "60879.5",
726 // "amount": "0.00165962"
727 // },
728 // ... followed by older trades
729 //
730 Object data = this.safeDict(response, "data", new java.util.HashMap<String, Object>() {{}});
731 Object trades = this.safeList(data, "trades", new java.util.ArrayList<Object>(java.util.Arrays.asList()));
732 return this.parseTrades(trades, market, since, limit);
733 });
734
735 }
736
737 public Object parseTrade(Object trade, Object... optionalArgs)
738 {

Callers

nothing calls this directly

Calls 15

getArgMethod · 0.95
GetValueMethod · 0.95
isTrueMethod · 0.95
isEqualMethod · 0.95
addElementToObjectMethod · 0.95
mathMinMethod · 0.95
loadMarketsMethod · 0.45
marketMethod · 0.45
iso8601Method · 0.45
handleParamInteger2Method · 0.45
getMethod · 0.45

Tested by

no test coverage detected