Caplin FXIntegrationAPI Documentation - Version 8.13.0
Message Builder Example - TicketSwapTradeConfirmation
package com.caplin.examples.fxapi.generated.motif.fx.tradeconfirmation.TradeConfTypesDef;
import java.math.BigInteger;
import static com.caplin.motif.fx.config.DefaultDisplayFields.addDefaultSalesAllocationDetailsUpdateFields;
import static com.caplin.motif.fx.config.definitions.common.Tag;
import com.caplin.generated.motif.fx.settlementinstructions.SettlementInstructionsPartsDef;
import com.caplin.generated.motif.fx.tradeconfirmation.TradeConfPartsDef;
import com.caplin.generated.motif.fx.tradeconfirmation.TradeConfTypesDef;
public class TicketSwapTradeConfirmationExample {
public static void main(String[] args) {
TradeConfTypesDef.TicketSwapTradeConfirmation ticketSwapTradeConfirmation =
TradeConfTypesDef.TicketSwapTradeConfirmation
.newBuilder()
.setCommonSwapTradeConfirmation(
TradeConfTypesDef.CommonSwapTradeConfirmation
.newBuilder()
.setCommonFields(
TradeConfPartsDef.CommonTradeConfirmationFields
.newBuilder()
.setAccount("Garfields|GARF")
.setAccountEditable()
.setAllocationSettlementDateOptions("ORIGINAL,EARLIER,LATER")
.setAmountDPS(2)
.setAssetType("")
.setBackOfficeID("")
.setCanAllocate("")
.setCanDrawdown("")
.setClient("")
.setClientAgreementDateTime("", true)
.setClientAgreementDateTimeEditable()
.setContraAmountDPS(2)
.setContraCostAmount(BigDecimal.valueOf(0.0))
.setContraCostCurrency("GBP")
.setContraCostCurrencyDPS("2")
.setContraCostPercentage("13.56")
.setCostAmount(BigDecimal.valueOf(12412891.31))
.setCostCurrency("GBP")
.setCostCurrencyDPS("2")
.setCostPercentage("13.56")
.setCurrencyPair("")
.setDealtCurrency("", true, true)
.setDealtCurrencyEditable()
.setDealtCurrencyRisk()
.setDeliverableType("")
.setDetailedWarningMessage("")
.setDigitsBeforePips(2)
.setEntityDescription("Customer 1")
.setEntityId("CUSTONE")
.setExecutionDateTime("20160322123621")
.setFullName("")
.setHasPostTradeHistory(true)
.setIsAllocated(true)
.setIsAmendable(true)
.setIsCancellable(true)
.setIsReversible(true)
.setNaturalLanguageSummaryHidden(true)
.setNumberOfPips("2")
.setOrderID("")
.setOriginalTradeID("")
.setPostTradeType("")
.setPriceSource("st1@caplin.com")
.setPurpose("Commercial")
.setRemarks("")
.setServiceContraCostCurrencyDPS(2)
.setServiceCostCurrencyDPS(2)
.setSpotMidRate(BigDecimal.valueOf(1.08345))
.setSpotRate(BigDecimal.valueOf(1.08341))
.setSpotRateDPS(5)
.setStatus("AWAITING-PRICE")
.setTOBOUser("", true, true)
.setTOBOUserEditable()
.setTOBOUserRisk()
.setTags(Arrays.asList(/* ... */))
.setTradeDate("20160314")
.setTradeID("00001561")
.setTraderUsername("sales_trader@novobank.co.za")
.setTradingType("")
.setUTI("")
.setVenue("FX Sales")
.setWarningCode("001")
.setWarningMessage("**CREDIT CHECK:** This user has a credit limit of **1,000,000.00 USD** which should not be exceeded.")
.build())
.setFarLegTradeConfirmation(
TradeConfPartsDef.LegTradeConfirmationFields
.newBuilder()
.addRemarks(
TradeConfPartsDef.RemarksEntry
.newBuilder()
.setRemarkDateTime("2018-03-16T07:25:16+00:00")
.setRemarkOriginStatus("")
.setRemarkSource("")
.setRemarkTargetStatus("")
.build())
.setAccount("Garfields|GARF")
.setAdjustedSwapPoints(BigDecimal.valueOf(0.0))
.setAllInMidRate(BigDecimal.valueOf(1.091790))
.setAllInRate(BigDecimal.valueOf(1.091790))
.setAllInRateDPS("5")
.setAllocatableAmount(BigDecimal.valueOf(500))
.setAllocatableContraAmount("500")
.setAmount(BigDecimal.valueOf(0.0), true, true)
.setAmountEditable()
.setAmountRisk()
.setBuySell("")
.setContraAmount(BigDecimal.valueOf(500))
.setContraCostAmount("")
.setContraCostCurrency("GBP")
.setContraCostPercentage("13.56")
.setCostAmount(BigDecimal.valueOf(12412891.31))
.setCostCurrency("GBP")
.setCostPercentage("13.56")
.setEntityDescription("Customer 1")
.setEntityId("CUSTONE")
.setFilledAmount("0")
.setForwardPointsDecimalOffset(0)
.setFullName("")
.setFwdMidPoints("0.005390")
.setFwdPips("11.98")
.setFwdPoints(BigDecimal.valueOf(0.001198))
.setIsTimeOption(true)
.setNostroAccountFields(
SettlementInstructionsPartsDef.NostroAccount
.newBuilder()
.setNostroAccount("AE770090004000824676500")
.setNostroBIC("ARABAEADABC")
.setNostroName("GBP Nostro Account.")
.build())
.setOriginalRate(BigDecimal.valueOf(0.0))
.setProfit(BigDecimal.valueOf(1000))
.setRemainingAmount(BigDecimal.valueOf(500))
.setRemarks(
TradeConfPartsDef.RemarksEntry
.newBuilder()
.build(), 0)
.setRiskDate("20160314")
.setRiskTenor("1W")
.setServiceContraCostAmount("")
.setServiceContraCostCurrency("GBP")
.setServiceCostAmount(BigDecimal.valueOf(0.0))
.setServiceCostCurrency("GBP")
.setSettlementDate("")
.setSettlementDateEditable()
.setSettlementDateRisk()
.setSettlementTradeFields(
SettlementInstructionsPartsDef.SettlementTradeFields
.newBuilder()
.addPay(
SettlementInstructionsPartsDef.SettlementFields
.newBuilder()
.setBankAccount("12345678")
.setBankAddress1("12 Capitol")
.setBankAddress2("The City")
.setBankAddress3("London")
.setBankName("Bank Of Caplin")
.setBankSwift("CAP123")
.setIndividualAccount("87654321")
.setIndividualAddress1("98 Lane")
.setIndividualAddress2("Manchester")
.setIndividualName("Susan Sellers")
.setIndividualSwift("SOLD987")
.setIsDefaultSettlementInstruction(true)
.setNettingStatus("NETTED")
.setSettlementAmount(BigDecimal.valueOf(0.0))
.setSettlementCurrency("GBP")
.setSettlementDetailsLine1("")
.setSettlementDetailsLine2("")
.setSettlementDetailsLine3("")
.setSettlementDetailsLine4("")
.setSettlementDetailsLine5("")
.setSettlementDetailsLine6("")
.setSettlementDirection("")
.setSettlementDisplayName("[CCY] Account 1")
.setSettlementId("")
.setSettlementInstructionType("EXISTING")
.setSettlementStatus("")
.setSplitComponentId("")
.build())
.addPayNettingComponents(
SettlementInstructionsPartsDef.NettingComponents
.newBuilder()
.setAmount(BigDecimal.valueOf(0))
.setBuySell("")
.setTradeID("00001561")
.build())
.addReceive(
SettlementInstructionsPartsDef.SettlementFields
.newBuilder()
.build())
.addReceiveNettingComponents(
SettlementInstructionsPartsDef.NettingComponents
.newBuilder()
.build())
.setAffirmedBy("")
.setAffirmedDateTime("2018-03-16T07:25:16+00:00")
.setCanAdHoc(true)
.setCanAffirm("")
.setCanApproveInstructions(true)
.setCanAutoConfirm("")
.setCanCancel("")
.setCanConfirm("")
.setCanDispute("")
.setCanRejectInstructions("")
.setCanRelease(true)
.setCanReplace(true)
.setCanUnconfirm("")
.setConfirmedBy("")
.setConfirmedDateTime("2018-03-16T07:25:16+00:00")
.setIsPayNetted(true)
.setIsPayNettingRequired("")
.setIsPaySplit(true)
.setIsReceiveNetted("")
.setIsReceiveNettingRequired("")
.setIsReceiveSplit("")
.setNextActionDeadline(Instant.now())
.setNextActionDeadlineDisplayTimezone("America/New_York")
.setSettlementStatus("")
.build())
.setStartDate("20150620")
.setStartDateRisk()
.setStartTenor("", true)
.setStartTenorRisk()
.setTOBOUser("", true, true)
.setTOBOUserEditable()
.setTOBOUserRisk()
.setTenor("1M")
.setTenorEditable()
.setTenorRisk()
.setTradeID("00001561")
.build())
.setFarNdfLegTradeConfirmation(
TradeConfPartsDef.NDFLegTradeConfirmationFields
.newBuilder()
.setFixingAmount("")
.setFixingCode("[CCY]1/1600/GBLO")
.setFixingCurrency("USD")
.setFixingDate("20150620")
.setFixingDescription("WMR [CCY] 4pm London")
.setReferenceAmount("")
.setReferenceCurrency("")
.setSettlementAmount(BigDecimal.valueOf(0.0))
.build())
.setNdfTradeConfirmation(
TradeConfPartsDef.NDFTradeConfirmationFields
.newBuilder()
.setFixingSource("WMR 8am London Time")
.setSettlementCurrency("GBP")
.build())
.setNearLegTradeConfirmation(
TradeConfPartsDef.LegTradeConfirmationFields
.newBuilder()
.build())
.setNearNdfLegTradeConfirmation(
TradeConfPartsDef.NDFLegTradeConfirmationFields
.newBuilder()
.build())
.setSwapFields(
TradeConfPartsDef.SwapTradeConfirmationFields
.newBuilder()
.setSwapMidPoints("0.004553")
.setSwapPips("53.90")
.setSwapPoints("0.005390")
.setSwapType("SPOTFWD")
.build())
.build())
.setDisplayFields(addDefaultSalesAllocationDetailsUpdateFields(/* See DefaultDisplayFields javadoc for parameters and available builder methods. */))
.setFarSettlementTradeFields(
SettlementInstructionsPartsDef.SettlementSummaryTradeFields
.newBuilder()
.build())
.setNearSettlementTradeFields(
SettlementInstructionsPartsDef.SettlementSummaryTradeFields
.newBuilder()
.build())
.build();
}
}