Package com.qtsurfer.api.client.model
Class ResultMap
java.lang.Object
com.qtsurfer.api.client.model.ResultMap
@Generated(value="org.openapitools.codegen.languages.JavaClientCodegen",
comments="Generator version: 7.14.0")
public class ResultMap
extends Object
Execution result map. Always includes core fields (hostName, iops, strategyId, instrument). Yield metrics (pnlTotal, pnlTotalPercent, totalTrades, winRate, equityCurve, etc.) are present when the strategy emitted at least one trade. When signal storage is enabled, includes signal fields described below. `notices` carries what the run had to say about itself, and is absent when it had nothing.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddEquityCurveItem(EquityPoint equityCurveItem) addNoticesItem(Notice noticesItem) booleanReturn true if this ResultMap object is equal to o.equityCurve(List<EquityPoint> equityCurve) getCagr()Compound Annual Growth RateEquity curve over the backtest.Identifier of the worker that executed the strategy.The instrument (currency pair) that was backtestedgetIops()Instrument operations per second throughput during executionMaximum absolute drawdown in the output currencyMaximum percentage drawdown from peak equityDiagnostics the engine raised over this run, each with `provenance: execute`.How many notices were dropped past the cap of 50.Total profit and loss in the output currencyTotal PnL as a percentage of the initial capital (`backtestFunding`).Risk-adjusted return ratio (mean return / standard deviation of returns)Number of signals emitted during strategy executionStorage key for the signals file.Upload status.ISO 8601 timestamp of when the upload completed.Human-readable reason when signalsUpload is Failed or Skipped.HTTPS URL to download the signals Parquet file.Downside risk-adjusted return ratio (mean return / downside deviation)**Not the `strategyId` you compiled with** — this is the execution context id, `strategy:<user>:<strategyId>`.Total number of trades executed by the strategyPercentage of profitable trades (0-100)inthashCode()instrument(String instrument) maxDrawdown(Double maxDrawdown) maxDrawdownPercent(Double maxDrawdownPercent) noticesTruncated(Integer noticesTruncated) pnlTotalPercent(Double pnlTotalPercent) voidvoidsetEquityCurve(List<EquityPoint> equityCurve) voidsetHostName(String hostName) voidsetInstrument(String instrument) voidvoidsetMaxDrawdown(Double maxDrawdown) voidsetMaxDrawdownPercent(Double maxDrawdownPercent) voidsetNotices(List<Notice> notices) voidsetNoticesTruncated(Integer noticesTruncated) voidsetPnlTotal(Double pnlTotal) voidsetPnlTotalPercent(Double pnlTotalPercent) voidsetSharpeRatio(Double sharpeRatio) voidsetSignalCount(Integer signalCount) voidsetSignalsId(String signalsId) voidsetSignalsUpload(ResultMap.SignalsUploadEnum signalsUpload) voidsetSignalsUploadedAt(OffsetDateTime signalsUploadedAt) voidsetSignalsUploadReason(String signalsUploadReason) voidsetSignalsUrl(URI signalsUrl) voidsetSortinoRatio(Double sortinoRatio) voidsetStrategyId(String strategyId) voidsetTotalTrades(Long totalTrades) voidsetWinRate(Double winRate) sharpeRatio(Double sharpeRatio) signalCount(Integer signalCount) signalsUpload(ResultMap.SignalsUploadEnum signalsUpload) signalsUploadedAt(OffsetDateTime signalsUploadedAt) signalsUploadReason(String signalsUploadReason) signalsUrl(URI signalsUrl) sortinoRatio(Double sortinoRatio) strategyId(String strategyId) toString()totalTrades(Long totalTrades) Convert the instance into URL query string.toUrlQueryString(String prefix) Convert the instance into URL query string.
-
Field Details
-
JSON_PROPERTY_HOST_NAME
- See Also:
-
JSON_PROPERTY_IOPS
- See Also:
-
JSON_PROPERTY_STRATEGY_ID
- See Also:
-
JSON_PROPERTY_INSTRUMENT
- See Also:
-
JSON_PROPERTY_NOTICES
- See Also:
-
JSON_PROPERTY_NOTICES_TRUNCATED
- See Also:
-
JSON_PROPERTY_PNL_TOTAL
- See Also:
-
JSON_PROPERTY_PNL_TOTAL_PERCENT
- See Also:
-
JSON_PROPERTY_TOTAL_TRADES
- See Also:
-
JSON_PROPERTY_WIN_RATE
- See Also:
-
JSON_PROPERTY_SHARPE_RATIO
- See Also:
-
JSON_PROPERTY_SORTINO_RATIO
- See Also:
-
JSON_PROPERTY_CAGR
- See Also:
-
JSON_PROPERTY_MAX_DRAWDOWN
- See Also:
-
JSON_PROPERTY_MAX_DRAWDOWN_PERCENT
- See Also:
-
JSON_PROPERTY_EQUITY_CURVE
- See Also:
-
JSON_PROPERTY_SIGNAL_COUNT
- See Also:
-
JSON_PROPERTY_SIGNALS_ID
- See Also:
-
JSON_PROPERTY_SIGNALS_URL
- See Also:
-
JSON_PROPERTY_SIGNALS_UPLOAD
- See Also:
-
JSON_PROPERTY_SIGNALS_UPLOADED_AT
- See Also:
-
JSON_PROPERTY_SIGNALS_UPLOAD_REASON
- See Also:
-
-
Constructor Details
-
ResultMap
public ResultMap()
-
-
Method Details
-
hostName
-
getHostName
Identifier of the worker that executed the strategy. Useful when reporting issues so support can correlate with logs.- Returns:
- hostName
-
setHostName
-
iops
-
getIops
Instrument operations per second throughput during execution- Returns:
- iops
-
setIops
-
strategyId
-
getStrategyId
**Not the `strategyId` you compiled with** — this is the execution context id, `strategy:<user>:<strategyId>`. The compiled strategy's id is the last `:`-separated segment; that, not this whole string, is what `GET /strategy/{strategyId}` takes. Take the segment after the last `:` rather than counting from the front: the shape has changed once already and callers that indexed a fixed position broke on it.- Returns:
- strategyId
-
setStrategyId
-
instrument
-
getInstrument
The instrument (currency pair) that was backtested- Returns:
- instrument
-
setInstrument
-
notices
-
addNoticesItem
-
getNotices
Diagnostics the engine raised over this run, each with `provenance: execute`. **Absent means nothing was raised.** This is the one surface where silence is a real answer: the run happened, over your data, start to finish, and the engine found nothing worth saying. That is not true of the compile path, where an empty list only means a short synthetic series reached nothing — see `GET /strategy/{strategyId}`. Notices are raised on failed and aborted runs too, and those are the ones most worth reading: a run that produced no trades often did so for a reason stated here.- Returns:
- notices
-
setNotices
-
noticesTruncated
-
getNoticesTruncated
How many notices were dropped past the cap of 50. Absent when none were. A large value usually means one fault repeating per instrument or per parameter vector rather than 50 distinct problems.- Returns:
- noticesTruncated
-
setNoticesTruncated
-
pnlTotal
-
getPnlTotal
Total profit and loss in the output currency- Returns:
- pnlTotal
-
setPnlTotal
-
pnlTotalPercent
-
getPnlTotalPercent
Total PnL as a percentage of the initial capital (`backtestFunding`). Zero when `backtestFunding` is 0.- Returns:
- pnlTotalPercent
-
setPnlTotalPercent
-
totalTrades
-
getTotalTrades
Total number of trades executed by the strategy- Returns:
- totalTrades
-
setTotalTrades
-
winRate
-
getWinRate
Percentage of profitable trades (0-100)- Returns:
- winRate
-
setWinRate
-
sharpeRatio
-
getSharpeRatio
Risk-adjusted return ratio (mean return / standard deviation of returns)- Returns:
- sharpeRatio
-
setSharpeRatio
-
sortinoRatio
-
getSortinoRatio
Downside risk-adjusted return ratio (mean return / downside deviation)- Returns:
- sortinoRatio
-
setSortinoRatio
-
cagr
-
getCagr
Compound Annual Growth Rate- Returns:
- cagr
-
setCagr
-
maxDrawdown
-
getMaxDrawdown
Maximum absolute drawdown in the output currency- Returns:
- maxDrawdown
-
setMaxDrawdown
-
maxDrawdownPercent
-
getMaxDrawdownPercent
Maximum percentage drawdown from peak equity- Returns:
- maxDrawdownPercent
-
setMaxDrawdownPercent
-
equityCurve
-
addEquityCurveItem
-
getEquityCurve
Equity curve over the backtest. Element 0 is an anchor at the backtest `from` with `initialCapital`; the remaining points are one sample per emitted yield, in order. Use it to plot the strategy's running equity without re-deriving it from the yield history.- Returns:
- equityCurve
-
setEquityCurve
-
signalCount
-
getSignalCount
Number of signals emitted during strategy execution- Returns:
- signalCount
-
setSignalCount
-
signalsId
-
getSignalsId
Storage key for the signals file. Treat as opaque; use signalsUrl to download.- Returns:
- signalsId
-
setSignalsId
-
signalsUrl
-
getSignalsUrl
HTTPS URL to download the signals Parquet file. Use signalsUpload to know when it's ready.- Returns:
- signalsUrl
-
setSignalsUrl
-
signalsUpload
-
getSignalsUpload
Upload status. Done = signal file is available at signalsUrl. Failed = upload error (see signalsUploadReason). Skipped = no signals emitted.- Returns:
- signalsUpload
-
setSignalsUpload
-
signalsUploadedAt
-
getSignalsUploadedAt
ISO 8601 timestamp of when the upload completed. Only present when signalsUpload is Done.- Returns:
- signalsUploadedAt
-
setSignalsUploadedAt
-
signalsUploadReason
-
getSignalsUploadReason
Human-readable reason when signalsUpload is Failed or Skipped.- Returns:
- signalsUploadReason
-
setSignalsUploadReason
-
equals
Return true if this ResultMap object is equal to o. -
hashCode
public int hashCode() -
toString
-
toUrlQueryString
Convert the instance into URL query string.- Returns:
- URL query string
-
toUrlQueryString
Convert the instance into URL query string.- Parameters:
prefix- prefix of the query string- Returns:
- URL query string
-