Exemplo n.º 1
0
    def __init__(self, *args, **kwds):
        MyFrame.__init__(self, *args, **kwds)

        self.quote_process = {}
        self.quote_workers = {}
        self.trader = {}
        self.strategy_process = {}

        # main application timer
        self.timer = wx.Timer(self)
        self.Bind(wx.EVT_TIMER, self.onTimer, self.timer)
        self.timer.Start(1000 * 10)

        self.m_obj = {}  # market
        self.c_obj = {}  # commodity
        self.s_obj = {}  # strategy

        self.market_ini = market_ini
        self.commodity_ini = commodity_ini
        self.strategy_ini = strategy_ini

        self.data_ids = ['username', 'password', 'cert',
                         'certpass', 'autostart', ]  # 'sctrl','actrl']

        self.logfilename = os.path.join(app_dir, "autotrader.log")
        logging.basicConfig(
            level=logging.INFO,
            format='%(asctime)s %(message)s',
            datefmt='%Y-%m-%d %H:%M:%S',
            filename=self.logfilename,
        )
        self.logger = logging.getLogger('')

        # Market
        self.mctrl.InsertColumn(0, _("Market Name"))
        self.mctrl.InsertColumn(1, _("Market Code"))
        self.mctrl.InsertColumn(2, _("Market Time Zone"))

        # Commodity
        self.cctrl.InsertColumn(0, _("Commodity Name"))
        self.cctrl.InsertColumn(1, _("Commodity Code"))
        self.cctrl.InsertColumn(2, _("Market Code"))
        self.cctrl.InsertColumn(3, _("Quote Source"))
        self.cctrl.InsertColumn(4, _("Quote Folder"))

        # Strategy
        self.sctrl.InsertColumn(0, _("Id"))
        self.sctrl.InsertColumn(1, _("Commodity Code"))
        self.sctrl.InsertColumn(2, _("Program File"))
        self.sctrl.InsertColumn(3, _("Time Period"))

        self.loaddata()
        self.render_all()

        # test
        self.test = None
Exemplo n.º 2
0
 def __init__(self, *args, **kwds):
     MyFrame.__init__(self, *args, **kwds)
     # art work
     #self.quit = wx.MenuItem( self.menumain, wx.ID_ANY, u"離開"+ u"\t" + u"CTRL+X", wx.EmptyString, wx.ITEM_NORMAL )
                             
     #self.quit.SetBitmap(wx.ArtProvider.GetBitmap(wx.ART_QUIT,wx.ART_MENU,(16,16)))
     #self.menumain.AppendItem( self.quit )
     
     self.hts = False
     self.ocx = False
     self.con = False
     self.login = False
     self.cdate = "" # current month contract YYYYMM
     self.threads = []
     self.sl = [] # signal dict or list
     self.al = [] # action dict or list
     self.data_ids = ['username','password','cert','certpass','autostart',]#'sctrl','actrl']
     dirname = app_dir
     self.our_file = dirname+"/"+"automan.pickle"
     self.logfilename = dirname+"/"+"automan.log"
     logging.basicConfig(
         level=logging.INFO,
         format='%(asctime)s %(message)s',
         datefmt='%Y-%m-%d %H:%M:%S',
         filename=self.logfilename,
     )
     self.logger = logging.getLogger('') 
     
     self.sctrl.InsertColumn(0,u'策略名稱')
     self.sctrl.InsertColumn(1,u'策略狀態')
     self.sctrl.InsertColumn(2,u'策略監控檔案位址')
     self.sctrl.SetColumnWidth(2, 150)
     
     self.actrl.InsertColumn(0,u'下單名稱')
     self.actrl.InsertColumn(1,u'期貨商')
     self.actrl.InsertColumn(2,u'公司代碼')
     self.actrl.InsertColumn(3,u'帳號代碼')
     self.actrl.InsertColumn(4,u'商品代碼')
     self.actrl.InsertColumn(5,u'年月代碼')
     self.actrl.InsertColumn(6,u'策略')
     self.actrl.InsertColumn(7,u'目前倉位')
     self.actrl.InsertColumn(8,u'下單口數')
     
     self.actrl.SetColumnWidth(1, 60)
     self.actrl.SetColumnWidth(7, 60)
     self.actrl.SetColumnWidth(8, 60)
     #self.actrl.SetColumnWidth(7, 80)
     #self.actrl.SetColumnWidth(8, 80)
     self.data = {}
     self.loaddata()
     self.get_our()
     self.render_all()
     # check broker support 
     self.checkbroker()
     self.checkautostart()
Exemplo n.º 3
0
    def __init__(self, *args, **kwds):
        MyFrame.__init__(self, *args, **kwds)

        self.quote_process = {}
        self.quote_workers = {}
        self.trader = {}
        self.strategy_process = {}

        # main application timer
        self.timer = wx.Timer(self)
        self.Bind(wx.EVT_TIMER, self.onTimer, self.timer)
        self.timer.Start(1000 * 10)

        self.m_obj = {}  # market
        self.c_obj = {}  # commodity
        self.s_obj = {}  # strategy

        self.market_ini = market_ini
        self.commodity_ini = commodity_ini
        self.strategy_ini = strategy_ini

        self.data_ids = [
            'username',
            'password',
            'cert',
            'certpass',
            'autostart',
        ]  # 'sctrl','actrl']

        self.logfilename = os.path.join(app_dir, "autotrader.log")
        logging.basicConfig(
            level=logging.INFO,
            format='%(asctime)s %(message)s',
            datefmt='%Y-%m-%d %H:%M:%S',
            filename=self.logfilename,
        )
        self.logger = logging.getLogger('')

        # Market
        self.mctrl.InsertColumn(0, _("Market Name"))
        self.mctrl.InsertColumn(1, _("Market Code"))
        self.mctrl.InsertColumn(2, _("Market Time Zone"))

        # Commodity
        self.cctrl.InsertColumn(0, _("Commodity Name"))
        self.cctrl.InsertColumn(1, _("Commodity Code"))
        self.cctrl.InsertColumn(2, _("Market Code"))
        self.cctrl.InsertColumn(3, _("Quote Source"))
        self.cctrl.InsertColumn(4, _("Quote Folder"))

        # Strategy
        self.sctrl.InsertColumn(0, _("Id"))
        self.sctrl.InsertColumn(1, _("Commodity Code"))
        self.sctrl.InsertColumn(2, _("Program File"))
        self.sctrl.InsertColumn(3, _("Time Period"))

        self.loaddata()
        self.render_all()

        # test
        self.test = None