CreateInstruments

Inputs (Array of Instruments) inherits from EntityBase

Note, if errors occur when creating instruments, the errors can be placed in the ExecutionInterfaces in the response
if the errors are related to the creation of the ExecutionInterface.

Name

Type

Description

Mandatory

Available from version

Name

Type

Description

Mandatory

Available from version

BrickId

Guid

Not used

 

 

InstrumentType

Integer

https://bricknode.atlassian.net/wiki/display/API/Instrument

True

 

CurrencyCode

String

ISO-code for currency in which instrument is traded.

True

 

ISIN

String

The International Securities Identification Number of the instrument

 

 

Name

String

 

 

 

LastSubscriptionDate

DateTime

The last subscription date of the instrument

 

 

ExpirationDate

DateTime

The expiration date of the instrument

 

 

Price

Double

Current price

 

 

QuantityDecimals

Integer

The number of decimals to use on the quantity of units for the instrument

 

 

DisplayDecimalsPrice

Integer

 

True

 

ValueMultiplier

Double

The value multiplier for the instrument. 1 as default if not set.

 

2.02

DisplayPercentagePrice

Boolean

True if BFS should display percentage price. 1 as default if not set.

 

2.02

InstrumentStatus

Integer

https://bricknode.atlassian.net/wiki/display/API/Instrument

True

 

IsUnitOrder

Boolean

This property is deprecated, and is used on executioninterfaces instead

 

 

InstrumentCategorization

InstrumentCategorizationItem[]

An InstrumentCategorizationItem is a custom field that makes it possible to add instrument categories or other values to an instrument. This is explained here: InstrumentCategorizationItem

 

 

TaxCountry

String

According to ISO-standard here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2

 

 

VisibleStatusKey

String

https://bricknode.atlassian.net/wiki/display/API/Instrument

 

 

Symbol

String

The short symbol name for the instrument. The FIGI symbology consists of the unique, persistent, unchanging alpha-numeric identifier, as well as the multiple individual pieces of associated descriptive metadata.”

 

 

ExternalReference

String

This is an external reference that can be set on the instrument, for example, this could be an identifier for an external system, a delimited list of various symbols for different systems like Bloomberg symbol for example

 

 

Comment

String

The comment for the instrument

 

2.09

DefaultMarketPlace

Guid

This is the BrickId of the default marketplace for the instrument

 

 

TradingCalendar

String

 

 

For future use

SettlementCalendar

String

 

 

For future use

Issuer

Guid

The Issuer of the instrument. Issuer must be allowed to manage current InstrumentType.

 

 

CustomFields

object[]

CustomFields is an array of CustomField objects. Each CustomField consists of two strings, FieldName and Value. There are no datatypes associated with these properties, they are just a way for api-users to add custimized data to the object.

 

2.09

Organizer

Guid

The BrickId of the Organizer of the instrument

 

2.10

PriceDate

DateTime

PriceDate is when the current Price of the instrument was set

 

2.10

FeeCategoryKey

String

Which FeeCategory the instrument is associated with

 

2.10

BuyCommissionPercentage

Double

BuyCommissionPercentage of the instrument

 

2.10

SellCommissionPercentage

Double

SellCommissionPercentage of the instrument

 

2.10

EarlySellFeePercentage

Double

EarlySellFeePercentage of the instrument

 

2.10

ProductCompensationPercentage

Double

ProductCompensationPercentage of the instrument

 

2.10

FirstTradeDate

DateTime

FirstTradeDate of the instrument (Securities terms - Date concepts within the securities market)

 

2.10

LastTradeDate

DateTime

LastTradeDate of the instrument (Securities terms - Date concepts within the securities market)

 

2.10

DatasheetURL

String

DatasheetURL of the instrument

 

2.10

LockInPeriodDays

Int

Number of days from the Buy date where the owner has to pay an early sell fee

 

2.10

IsLimitedToAccountTypes

Bool

If the instrument is limited to different account types

 

2.10

DebtInstrument

Bool

Debt instrument classification that will be used in TRS2 reporting

 

2.13

WhiteLabel

Guid

Id of WhiteLabel that instrument should belong to (optional)

 

2.16

HasMifidIIData

Bool

True if instrument has Mifid-data in external app

 

2.17

KnowledgeGroup

string

Knowledgegroup of instrument

 

2.17

ExPostCalcMethod

string

Method for ExPost Calculation

Within Bricknode Broker this can be set in the GUI

A value of "1" is read as Market Value and a value of "2" is read as Nominal Amount.

 

2.17

ManagementFeePercentage

decimal

Field to save ManagementFeePercentage on instrument

 

2.19

FundEntity

Guid

The BrickId of a FundEntity that is associated with the instrument

 

2.20

FundCompany

Guid

The BrickId of a FundCompany that is associated with the instrument

 

2.20

FeeGroup

string

The key of the FeeGroup that is associated with the instrument

 

2.23

EnableMifidIITenPercentAlert

Bool

If instrument is of a type that requires warnings for the customers if the value of the instrument drops with 10%

 

2.24

ExecutionInterfaces

ExecutionInterface[]

Array of ExecutionInterface

 

2.26

DefaultExecutionInterface

string

The default execution interface of the instrument. The one you enter ("Manual", for example) must also be contained in the embedded ExecutionInterfaces on the instrument, else the system will not accept it.

 

2.30

ExcludeFromFeeRelatedSelling

Bool

Says whether an instrument should be considered for selling to free up funds for fees (if this has been specifically set up)

 

2.38



Outputs

Name

Type

Description

Name

Type

Description

Entities

Array

All instruments in the request is returned along with each instrument's BrickId and array of Errors per instrument



Code examples

C# - CreateInstrument
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62  //Create an instrument using the CreateInstruments method var client = new BFSServiceReference.bfsapiSoapClient(); var credentials = new BFSServiceReference.Credentials() { UserName = bfsusername, //Username of administrative user in your instance of BFS Password = bfspassword, //Password of the administrative user in your instance of BFS }; var IC = new InstrumentCategorizationItem() { GroupKey = "Industry", Key = "Technology", Weight = 0.3 }; var response = client.CreateInstruments(new BFSServiceReference.CreateInstrumentRequest() { Credentials = credentials, identify = bfsidentifier, //Identifier is a unique token for your instance of BFS Entities = new[] { new Instrument() { InstrumentType = 1, CurrencyCode = "SEK", ISIN = "SE0000108656", Name = "TestInstrument", Symbol = "TEST", TradingCalendar = "ForFutureUse", SettlementCalendar = "ForFutureUse", QuantityDecimals = 2, DisplayDecimalsPrice = 2, ValueMultiplier = 1, InstrumentStatus = 1, IsUnitOrder = true, InstrumentCategorization = new InstrumentCategorizationArray() { Array = new InstrumentCategorizationItem[] { IC, } }, ExternalReference = "External system ID", TaxCountry = "SE", Price = 100, DefaultMarketPlace = new Guid("25d5a96c-87f0-481f-a9b2-bc96e58012fd"), VisibleStatusKey = "Open" } } }); //Show information about the created instrument foreach (var c in response.Entities) { Console.WriteLine(c.BrickId + ", " + c.Errors); }