[Quickfix-announce] problem
Brought to you by:
orenmnero
|
From: rajesh r. <rat...@gm...> - 2006-03-07 12:30:21
|
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using QuickFix;
namespace quickfixclient2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
SocketInitiator initiator;
private void Form1_Load(object sender, EventArgs e)
{
String fileName = Environment.CurrentDirectory + @"\fixSeting.cfg";//args[0];
SessionSettings settings = new SessionSettings(fileName);
//Container for setting dictionaries mapped to session
QuickFix.Application application = new MyApplication();
//This interface must be implemented to define what your FIX application does.
FileStoreFactory storeFactory = new FileStoreFactory(settings);
//Creates a file based implementation of messagestore
FileLogFactory logFactory = new FileLogFactory(settings);
//Creates a file based implementation of log
MessageFactory messageFactory = new DefaultMessageFactory();
initiator = new SocketInitiator
(application, storeFactory, settings, logFactory /*optional*/, messageFactory);
//initiator.start();
//MessageBox.Show("Ready to Work");
}
private void button1_Click(object sender, EventArgs e)
{
initiator.start();
// MessageBox.Show("log on");
listMessage.Items.Add("log on");
}
private void button2_Click(object sender, EventArgs e)
{
try
{
TransactTime tt = new TransactTime(DateTime.Now.ToUniversalTime());
QuickFix42.NewOrderSingle message = new QuickFix42.NewOrderSingle(new ClOrdID(DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString()), new HandlInst('1'), new Symbol("AMLAK"), new Side(Side.SELL), tt, new OrdType(OrdType.LIMIT));
//message.set(new Text("Placing Order!"));
QuickFix.SessionID s = new SessionID("FIX.4.2", "CLIENT2", "EXECUTOR");
TransactTime st = new TransactTime(DateTime.Now);
// message.setField(60, "20051222-06:06:24.281");
// message.setField(167, "Services");
// message.setField(50, "CLIENT2");
//message.setField(142, "1");
//message.setField(38, "100");
// message.setField(386, "1");
// message.setField(336, "0510");
//message.setField(63, "0");
//message.setField(1, "45159816");
//message.setField(40, "2");
string plOrderID = message.getClOrdID().getValue();// .ToString();// (ClOrdID 11);
//plOrderType = message.getOrdType().ToString();
string plOrderSymbol = message.getSymbol().getValue();//.ToString();
string plOrderSide = message.getSide().getValue().ToString();
//listing the optional tagids
//message.setField(63, "0");
//message.setField(64, "20060202");
//message.setField(18, "G");
//message.setField(44, "145.00");
//message.setField(59, "0");
/* message.setField(8, "FIX.4.2");
message.setField(9, "127");
message.setField(35, "D");
message.setField(49, "CLIENT1");
message.setField(56, "EXECUTOR");
message.setField(34, "8");
message.setField(50, "CLIENT1");
message.setField(142, "234");
message.setField(52, "20060228-10:02:24.281");
message.setField(11, "E001");
message.setField(21, "1");
message.setField(386, "1");
message.setField(55, "AMLOCK");
message.setField(54, "1");
message.setField(60, "20060228-10:02:24.281");
message.setField(38, "15");
message.setField(40, "2");
*/
//message.setField(10, "097");
// message.setField(7300, "0");
// message.setField(44, "105");
// message.setField(453, "1");
// message.setField(448, "4501");
// message.setField(447, "D");
// message.setField(452, "29");
Session.sendToTarget(message, s);
//sendOrderStatusReq(plOrderSymbol, plOrderID);
listMessage.Items.Add("Order Status Request sent");
//MessageBox.Show("Order Status Request sent");
}
catch (SessionNotFound ex)
{
MessageBox.Show("Session not found");
}
catch (DoNotSend ex)
{
MessageBox.Show(ex.ToString());
}
catch (IncorrectDataFormat ex)
{
MessageBox.Show(ex.ToString());
}
catch (InvalidMessage ex)
{
MessageBox.Show(ex.ToString());
}
catch (IncorrectTagValue ex)
{
MessageBox.Show(ex.ToString());
}
# region comment
/* try
{
TransactTime tt = new TransactTime(DateTime.Now.ToUniversalTime());
QuickFix42.NewOrderSingle message = new QuickFix42.NewOrderSingle(new ClOrdID(DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString()), new HandlInst('1'), new Symbol("AMLAK"), new Side(Side.BUY), tt, new OrdType(OrdType.MARKET));
//message.set(new Text("Placing Order!"));
QuickFix.SessionID s = new SessionID("FIX.4.2", "CLIENT1", "EXECUTOR");
TransactTime st = new TransactTime(DateTime.Now);
string plOrderID = message.getClOrdID().getValue();// .ToString();// (ClOrdID 11);
//plOrderType = message.getOrdType().ToString();
string plOrderSymbol = message.getSymbol().getValue();//.ToString();
string plOrderSide = message.getSide().getValue().ToString();
// message.setField(58, "New Order");
// message.setField(49, "CLIENT1");
//message.setField(56, "EXECUTOR");
//message.setField(35, "D");
// message.setField(50, "CLIENT1");
// message.setField(142, "010");
// message.setField(52, "20051222-06:06:23.281");
// message.setField(11, plOrderID);
//message.setField(11, "106");
// message.setField(21, "1");
// message.setField(386, "1");
// message.setField(55, plOrderSymbol);
//message.setField(55, "RAJESH");
// message.setField(54, plOrderSide);
//message.setField(54, "1");
// message.setField(60, "20051222-06:06:24.281");
// message.setField(38, "10");
// message.setField(40, "2");
message.setField(40, "2");
message.setField(386, "1");
message.setField(142, "1");
message.setField(50, "CLIENT1");
message.setField(38, "10");
//message.setField(8, "FIX.4.2");
// message.setField(9, "146");
// message.setField(35, "D");
// message.setField(49, "CLIENT1");
// message.setField(56, "EXECUTOR");
// message.setField(34, "144");
// message.setField(50, "CLIENT1");
// message.setField(142, "010");
// message.setField(52, "20051222-06:06:23.281");
// message.setField(11, plOrderID);
// message.setField(1,"1233");
//message.setField(11, "106");
// message.setField(21, "1");
// message.setField(386, "1");
// message.setField(55, plOrderSymbol);
//message.setField(55, "RAJESH");
// message.setField(54, plOrderSide);
//message.setField(54, "1");
// message.setField(60, "20051222-06:06:24.281");
// message.setField(38, "10");
// message.setField(40, "2");
Session.sendToTarget(message, s);
//sendOrderStatusReq(plOrderSymbol, plOrderID);
MessageBox.Show("Order Status Request sent");
}
catch (SessionNotFound ex)
{
MessageBox.Show("Session not found");
}
catch (DoNotSend ex)
{
MessageBox.Show(ex.ToString());
}
catch (IncorrectDataFormat ex)
{
MessageBox.Show(ex.ToString());
}
catch (InvalidMessage ex)
{
MessageBox.Show(ex.ToString());
}
catch (IncorrectTagValue ex)
{
MessageBox.Show(ex.ToString());
}*/
#endregion
}
static void sendOrderStatusReq(string plOrderSymbol, string plOrderID)
{
try
{
TransactTime tt = new TransactTime(DateTime.Now.ToUniversalTime());
QuickFix42.OrderStatusRequest message = new QuickFix42.OrderStatusRequest(new ClOrdID(DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString()), new Symbol(plOrderSymbol), new Side(Side.BUY));
// message.set(new Text("Placing Order!"));
QuickFix.SessionID s = new SessionID("FIX.4.2", "CLIENT1", "EXECUTOR");
TransactTime st = new TransactTime(DateTime.Now);
//message.setField(60, "20051222-06:06:24.281");
//plOrderType = message.getOrdType();
// plOrderSide
//message.setField(11, plOrderID);
// message.setField(50, "CLIENT2");
// message.setField(142, "1");
//message.setField(38, "100");
//message.setField(386, "1");
//message.setField(336, "0510");
// // message.setField(336, "0510");
//- message.setField(63, "0");
//message.setField(1, "45159816");
//listing the optional tagids
//message.setField(63, "0");
//message.setField(64, "20060202");
//message.setField(18, "G");
//message.setField(44, "145.00");
//message.setField(59, "0");
// message.setField(58, "New Order");
// message.setField(7300, "0");
// message.setField(44, "105");
// message.setField(453, "1");
// message.setField(448, "4501");
// message.setField(447, "D");
// message.setField(452, "29");
Session.sendToTarget(message, s);
}
catch (SessionNotFound ex)
{
MessageBox.Show("Session not found");
}
catch (DoNotSend ex)
{
MessageBox.Show(ex.ToString());
}
catch (IncorrectDataFormat ex)
{
MessageBox.Show(ex.ToString());
}
catch (InvalidMessage ex)
{
MessageBox.Show(ex.ToString());
}
catch (IncorrectTagValue ex)
{
MessageBox.Show(ex.ToString());
}
}
}
} |