Skip to content

Commit

Permalink
Added guaranteed to Transaction Definition
Browse files Browse the repository at this point in the history
  • Loading branch information
jamespeterschinner committed Jan 18, 2018
1 parent 959946f commit ac18343
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 1 deletion.
1 change: 1 addition & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Changelog

- All OrderRequests now require an `instrument` as there first parameter.
This is to allow correct rounding of decimal numbers to the instruments specification.
- `guaranteed: bool` has been added to Transaction definition.


6.2.2b0
Expand Down
3 changes: 2 additions & 1 deletion async_v20/definitions/types.py
Original file line number Diff line number Diff line change
Expand Up @@ -1147,7 +1147,8 @@ def __init__(self, id: TransactionID = ..., time: DateTime = ..., user_id: int =
loss_quote_home_conversion_factor: DecimalNumber = ...,
guaranteed_execution_fee: DecimalNumber = ...,
half_spread_cost: DecimalNumber = ...,
partial_fill: str = ...):
partial_fill: str = ...,
guaranteed: bool = ...):
Model.__init__(**locals())


Expand Down
2 changes: 2 additions & 0 deletions tests/data/json_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -385,3 +385,5 @@
list_service_lists_response = '{"lists":[{"id":"rest","name":"REST","description":" ","url":"http:\\/\\/api-status.oanda.com\\/api\\/v1\\/service-lists\\/rest"},{"id":"stream","name":"Stream","description":" ","url":"http:\\/\\/api-status.oanda.com\\/api\\/v1\\/service-lists\\/stream"}]}'

list_images_response = '{"images":[{"name":"sun","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/sun.png"},{"name":"move","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/move.png"},{"name":"right_quote","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/right_quote.png"},{"name":"x_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/x_alt.png"},{"name":"rss_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/rss_alt.png"},{"name":"move_alt2","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/move_alt2.png"},{"name":"move_horizontal_alt2","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/move_horizontal_alt2.png"},{"name":"pen_alt_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/pen_alt_stroke.png"},{"name":"stop","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/stop.png"},{"name":"arrow_right_alt2","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_right_alt2.png"},{"name":"chat_alt_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/chat_alt_stroke.png"},{"name":"comment_alt1_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/comment_alt1_fill.png"},{"name":"right_quote_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/right_quote_alt.png"},{"name":"fullscreen","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/fullscreen.png"},{"name":"book","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/book.png"},{"name":"denied","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/denied.png"},{"name":"folder_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/folder_stroke.png"},{"name":"box","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/box.png"},{"name":"document_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/document_fill.png"},{"name":"calendar","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/calendar.png"},{"name":"folder_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/folder_fill.png"},{"name":"chat","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/chat.png"},{"name":"dial","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/dial.png"},{"name":"at","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/at.png"},{"name":"heart","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/heart.png"},{"name":"plus-circle","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/plus-circle.png"},{"name":"wrench","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/wrench.png"},{"name":"cog_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/cog_alt.png"},{"name":"calendar_alt_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/calendar_alt_stroke.png"},{"name":"tick-circle","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/tick-circle.png"},{"name":"arrow_left_alt1","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_left_alt1.png"},{"name":"calendar_alt_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/calendar_alt_fill.png"},{"name":"arrow_down_alt1","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_down_alt1.png"},{"name":"bolt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/bolt.png"},{"name":"information","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/information.png"},{"name":"arrow_up_alt2","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_up_alt2.png"},{"name":"exclamation","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/exclamation.png"},{"name":"arrow_right_alt1","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_right_alt1.png"},{"name":"plug","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/plug.png"},{"name":"play_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/play_alt.png"},{"name":"tag_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/tag_fill.png"},{"name":"trash_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/trash_stroke.png"},{"name":"fullscreen_exit_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/fullscreen_exit_alt.png"},{"name":"magnifying_glass","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/magnifying_glass.png"},{"name":"pen_alt_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/pen_alt_fill.png"},{"name":"image","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/image.png"},{"name":"moon_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/moon_stroke.png"},{"name":"eject","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/eject.png"},{"name":"magnifying_glass_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/magnifying_glass_alt.png"},{"name":"pen","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/pen.png"},{"name":"map_pin_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/map_pin_fill.png"},{"name":"fullscreen_exit","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/fullscreen_exit.png"},{"name":"move_alt1","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/move_alt1.png"},{"name":"loop","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/loop.png"},{"name":"hard-hat","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/hard-hat.png"},{"name":"bug","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/bug.png"},{"name":"traffic-cone","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/traffic-cone.png"},{"name":"information-white","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/information-white.png"},{"name":"cross-circle","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/cross-circle.png"},{"name":"arrow_left","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_left.png"},{"name":"information-small","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/information-small.png"},{"name":"clock","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/clock.png"},{"name":"arrow_down","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_down.png"},{"name":"broom","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/broom.png"},{"name":"question-white","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/question-white.png"},{"name":"flag","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/flag.png"},{"name":"movie","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/movie.png"},{"name":"tag_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/tag_stroke.png"},{"name":"read_more","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/read_more.png"},{"name":"rss","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/rss.png"},{"name":"clock_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/clock.png"},{"name":"denied_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/denied_alt.png"},{"name":"key_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/key_stroke.png"},{"name":"trash_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/trash_fill.png"},{"name":"move_vertical_alt2","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/move_vertical_alt2.png"},{"name":"document_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/document_stroke.png"},{"name":"fullscreen_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/fullscreen_alt.png"},{"name":"left_quote_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/left_quote_alt.png"},{"name":"comment_alt1_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/comment_alt1_stroke.png"},{"name":"home","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/home.png"},{"name":"compass","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/compass.png"},{"name":"last","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/last.png"},{"name":"eyedropper","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/eyedropper.png"},{"name":"first","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/first.png"},{"name":"chat_alt_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/chat_alt_fill.png"},{"name":"question","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/question.png"},{"name":"arrow_right","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_right.png"},{"name":"arrow_up_alt1","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_up_alt1.png"},{"name":"key_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/key_fill.png"},{"name":"equalizer","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/equalizer.png"},{"name":"arrow_up","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_up.png"},{"name":"cd","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/cd.png"},{"name":"cursor","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/cursor.png"},{"name":"article","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/article.png"},{"name":"cog","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/cog.png"},{"name":"arrow_down_alt2","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_down_alt2.png"},{"name":"book_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/book_alt.png"},{"name":"lock","icon_set":"fugue","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/fugue\\/lock.png"},{"name":"check_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/check_alt.png"},{"name":"arrow_left_alt2","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/arrow_left_alt2.png"},{"name":"star","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/star.png"},{"name":"plus_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/plus_alt.png"},{"name":"map_pin_stroke","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/map_pin_stroke.png"},{"name":"new_window","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/new_window.png"},{"name":"spin_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/spin_alt.png"},{"name":"left_quote","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/left_quote.png"},{"name":"minus_alt","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/minus_alt.png"},{"name":"undo","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/undo.png"},{"name":"moon_fill","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/moon_fill.png"},{"name":"link","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/link.png"},{"name":"plus","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/plus.png"},{"name":"pin","icon_set":"iconic","url":"http:\\/\\/api-status.oanda.com\\/images\\/icons\\/iconic\\/pin.png"}]}'

example_transaction = {'type': 'STOP_LOSS_ORDER', 'trade_id': '21464', 'time_in_force': 'GTC', 'trigger_condition': 'DEFAULT', 'price': '133.37018', 'guaranteed': False, 'reason': 'ON_FILL', 'id': '21466', 'user_id': 6557245, 'account_id': '101-011-6557245-001', 'batch_id': '21463', 'request_id': '78417206187860428', 'time': '1516249692.857655787'}
5 changes: 5 additions & 0 deletions tests/test_type_creation/test_object_construction.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
from ..data.json_data import example_transaction_array
from ..data.json_data import example_trade_array
from ..data.json_data import example_market_order_reject_transaction
from ..data.json_data import example_transaction

from async_v20.definitions.types import Position
from async_v20.definitions.types import Instrument
Expand All @@ -16,6 +17,7 @@
from async_v20.definitions.types import ArrayTransaction
from async_v20.definitions.types import ArrayTrade
from async_v20.definitions.types import MarketOrderRejectTransaction
from async_v20.definitions.types import Transaction
from async_v20.definitions.primitives import TradeSpecifier
from async_v20.definitions.primitives import OrderSpecifier
from async_v20.definitions.primitives import PriceComponent
Expand Down Expand Up @@ -89,3 +91,6 @@ def test_all_possible_combinations_of_price_component():
def test_market_order_reject_transaction_can_be_created_from_example():
assert type(MarketOrderRejectTransaction(**example_market_order_reject_transaction)) == \
MarketOrderRejectTransaction

def test_transaction_can_be_constructed_from_example():
assert type(Transaction(**example_transaction)) == Transaction

0 comments on commit ac18343

Please sign in to comment.