4
ध्यान केंद्रित करना
13
समर्थक

सिमुलेशन डिस्क वातावरण

में बनाया: 2022-04-05 17:52:26, को अपडेट: 2022-04-05 17:54:46
comments   0
hits   1087

परिचय: यह नीति एक एमोरी डिस्क वातावरण बनाने के लिए पाइथन भाषा का उपयोग करती है जो रीयल डिस्क का समर्थन करती है

पर्यावरण विन्यास:

def main():
    IFsign()
    SimSign()
    while True:
        SimGo()

IFsignफ़ंक्शन आरंभिक वातावरण, जो चलाने पर केवल एक बार लोड होता है, चर बनाने के लिए SimSignफ़ंक्शंस ऑब्जेक्ट में लोड SimGoफ़ंक्शन गणना एमो खाता संख्या, लूपिंग की आवश्यकता है

डेटा संरचना:

Order आदेश संरचना, जो एक्सचेंज द्वारा बनाई जा सकती है[0].GetOrder() फ़ंक्शन लौटता है

{
    Id          : 123456,        // 交易单唯一标识
    Price       : 1000,          // 下单价格
    Amount      : 10,            // 下单数量
    DealAmount  : 10,            // 成交数量
    AvgPrice    : 1000,          // 成交均价
    Side        : "BUY"          // 订单方向,常量里的订单类型有:BUY,SELL
    Type        : "LONG",        // 订单类型,常量里的订单类型有: LONG,SHORT,NULL
    profit      : 0,             // 订单收益,现货均返回NULL
    feeCcy      : 1,             // 订单手续费
}

Account एक्सचेंज द्वारा खाता जानकारी[0].GetAccount() फ़ंक्शन लौटता है

{
    Balance         : 1000,      // 可用计价币数量
    FrozenBalance   : 0,         // Balance表示的资产用于挂单的冻结数量
    Stocks          : 1,         // 可用交易币数量
    FrozenStocks    : 0          // Stocks表示的资产用于挂单的冻结数量
}

Position एक्सचेंज द्वारा फ्यूचर ट्रेडिंग में रखे गए पोजीशन की जानकारी[0].GetPosition() फ़ंक्शन इस स्थिति संरचना की सरणी देता है।

{
    MarginLevel     : 10,        // 持仓杆杠大小
    Amount          : 100,       // 持仓量
    FrozenAmount    : 0,         // 仓位冻结量,用于平仓挂单时的临时冻结仓位数量
    Price           : 10000,     // 持仓均价
    Profit          : 0,         // 持仓浮动盈亏
    Type            : "LONG",    // LONG为多头仓位,SHORT为空头仓位
    Margin          : 1          // 仓位占用的保证金
}

एपीआई दस्तावेज़ीकरण:

निम्न फ़ंक्शन के माध्यम से जाना चाहिएexchange[交易对序号]ऑब्जेक्ट कॉल

exchange[0].Buy(price,account)

Buy फ़ंक्शन का उपयोग करेंभुगतान करें, एक ऑर्डर आईडी देता है। पैरामीटर मानः Price ऑर्डर मूल्य, संख्यात्मक प्रकार। Amount ऑर्डर मात्रा, संख्यात्मक प्रकार।

def main():
    id = exchange[0].Buy(100, 1)
    Log("id:", id)

exchange[0].Sell(Price, Amount)

Sell फ़ंक्शन का उपयोग करेंबिक्री पत्र, एक ऑर्डर आईडी देता है। पैरामीटर मानः Price ऑर्डर मूल्य, संख्यात्मक प्रकार। Amount ऑर्डर मात्रा, संख्यात्मक प्रकार।

def main():
    id = exchange[0].Sell(100, 1)
    Log("id:", id)

exchange[0].CancelOrder(Id)

CancelOrder फ़ंक्शन के लिएआदेश रद्द करें, किसी आईडी के ऑर्डर को रद्द करने के लिए कॉल किया गया. पैरामीटर मानः आईडी ऑर्डर नंबर है.

def main():
    id = exchange[0].Sell(99999, 1)
    exchange[0].CancelOrder(id)

exchange[0].GetOrder(Id)

GetOrder फ़ंक्शन के लिएआदेश प्राप्त करें, एक आईडी के लिए ऑर्डर की जानकारी वापस करने के लिए, सभी ऑर्डर की जानकारी वापस करने के लिए कोई पैरामीटर नहीं। पैरामीटर मानः आईडी ऑर्डर नंबर है जिसे प्राप्त करने की आवश्यकता है, पैरामीटर आईडी पूर्णांक प्रकार है

def main():
    order = exchange[0].GetOrder()

exchange[0].GetOrders(Id)

GetOrders फ़ंक्शन के लिएअपूर्ण आदेश प्राप्त करें, एक आईडी के लिए ऑर्डर की जानकारी वापस करने के लिए, सभी ऑर्डर की जानकारी वापस करने के लिए कोई पैरामीटर नहीं। पैरामीटर मानः आईडी ऑर्डर नंबर है जिसे प्राप्त करने की आवश्यकता है, पैरामीटर आईडी पूर्णांक प्रकार है

def main():
    orders = exchange[0].GetOrders()

exchange[0].GetAccount()

GetAccount फ़ंक्शन के लिएखाता जानकारी प्राप्त करें。 लौटाता हैः Account संरचना संरचना 。

def main():
    account = exchange[0].GetAccount()

exchange[0].GetPosition()

GetPosition फ़ंक्शन के लिएवर्तमान स्थिति की जानकारी प्राप्त करें。 लौटाता है मान:position संरचनात्मक सरणी。 कोई स्थिति नहीं है तो रिक्त सरणी लौटाता है, अर्थात[]。

def main():
    exchange[0].SetContractType("swap")
    exchange[0].SetMarginLevel(10)
    exchange[0].SetDirection("buy")
    exchange[0].Buy(10000, 2)
    position = exchange[0].GetPosition()

exchange[0].SetMarginLevel(…)

SetMarginLevel फ़ंक्शन का उपयोग करेंबार्स का आकार सेट करें。 पैरामीटर मानः संख्यात्मक प्रकार。

def main():
    exchange[0].SetMarginLevel(10)

exchange[0].SetDirection(…)

SetDirection फ़ंक्शन का उपयोग विनिमय सेट करने के लिए किया जाता है[खरीदें या विनिमय करें[0] सेल फ़ंक्शनफर्म ऑर्डरकी दिशा पैरामीटर मान: स्ट्रिंग प्रकार

नीचे की ओर कार्य SetDirection फ़ंक्शन के लिए पैरामीटर सेट की दिशा टिप्पणी
exchange[0].Buy “buy” खरीदें और अधिक खरीदें
exchange[0].Buy “closesell” खाली स्थान खरीदना
exchange[0].Sell “sell” खाली स्टॉक बेचना
exchange[0].Sell “closebuy” पिन-मोटर पोजीशन बेचना

दिशानिर्देश चार मापदंडों खरीद, बंद, बेचने, बंद करने के लिए ले जाया जा सकता है.

def main():
    exchange[0].SetContractType("swap")
    exchange[0].SetMarginLevel(5)
    exchange[0].SetDirection("buy")
    exchange[0].Buy(10000, 2)
    exchange[0].SetMarginLevel(5)
    exchange[0].SetDirection("closebuy")
    exchange[0].Sell(1000, 2)

exchange[0].SetContractType(…)

SetContractType फ़ंक्शन के लिएअनुबंध प्रकार सेट करें。 पैरामीटर मानः स्ट्रिंग प्रकार。 पैरामीटर ContractType किसी भी स्ट्रिंग हो सकता है

def main():
    exchange[0].SetContractType("this_week")

exchange[0].SetServiceCharge()

SetServiceCharge फ़ंक्शन के लिएप्रसंस्करण शुल्क सेट करें。 पैरामीटर मानः संख्यात्मक प्रकार。

def main():
    # 设置0.25%手续费
    exchange[0].SetServiceCharge(0.00025)

exchange[0].SetBalance()

SetBalance फ़ंक्शन के लिएबैलेंस सेट करें。 पैरामीटर मानः संख्यात्मक प्रकार。

def main():
    # 设置余额为10000
    exchange[0].SetBalance(10000)

exchange[0].SetSpread()

SetSpread फ़ंक्शन के लिएसेटअप त्रुटि。 पैरामीटर मानः संख्यात्मक प्रकार。

def main():
    # 设置点差为0.005%
    exchange[0].SetSpread(0.005)

नीति पता