where can I get FIX DATA (FIX as in FIX PROTOCOL) [closed] - fix-protocol

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
Can somebody suggest a place (websites) where to find 'real' FIX messages.
By real I mean not examples but 'real' so that if I put them into an engine it won't complain that tag 10 is incorrect or that I am missing some mandatory tags.
I am specifically after execution reports.
Ideally I'd love to find a large sequence of fix messages representing few days of activities.
I appreciate this can be sensitive data but surely tag 1,tag 207,tag 55 can all be obfuscated.
Many Thanks

Try FIX parser and click on the "sample data" button. It will generate a set of valid fix messages (including execution reports). Obviously you can also use it as a FIX parser to help you make sense of your data. Note that this text is separated by the actual FIX delimiter (SOH character). This means that visually all the text will look like a jumble of characters.

The problem with FIX is it'a a real catch-all protocol. It allows a lot of flexibility.
If you look, for example, at the spec for the Execution Report message in FIX 4.4 (BTW: always better to specify a version number with FIX), you'll notice that most of the tags you mentioned are not required by the protocol. Of the three you mentioned, only tag 55 is required on that message type. That means that whether tag 1 or 207 are there or not is up to the implementation in question.
So, unfortunately, there are no canonical samples. You should ask for sample messages from the party with whom you're trying to communicate.

You can get some sample data from validfix.
fix-analyzer.html has many examples of different fix messages
fix-log-analyzer.html has just one big example of a real log from some sort of fix engine.
(fixed broken link)

There are some examples of the TradeCaptureReport message you're talking about on my Online FIX Decoder page (shameless plug) which will not only show you the contents of the encoded message, but will decode it neatly into a table for you, assigning labels to the otherwise cryptic integers.
These particular examples were made publicly available by the LSE.
If you're doing trade reporting, the exact format you have to send will depend upon the vendor you're using. It's best to contact them directly and ask for samples as what is valid for one vendor is likely different from another.

There are some on the FIX protocol website if you have access (I don't know if they are available without logging on) or you can generate them yourself using the examples provided by quickfix.

Go to the CME-DataMine website where you can find Market Depth FIX files with all market data messages required to recreate the order book. ( CME DataMine )

I had the same need and ended up having to build something to automatically reformat FIX messages from one session to another. It turned out to be quite useful in our own testing, so I ended up hosting a server for it. Shameless plug here, but FIXSIM.com might be of use.

Related

Strange security issue - why would this happen? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I work for a company which handles some websites that have educational forms prospective students can fill out if they wish to be contacted by a college.
We have attempts coming in from two overseas countries, which are continually filling out and attempting to submit forms using ridiculously bogus information. The only possible outcome if these were to go through would be that the school would try to call them.
I cannot figure out how this could potentially benefit them, in any way shape or form. It seems like it's probably a bot, because they are inserting integers for first name, last name, and email address. I've even considered that some companies I've heard of boost their site traffic unethically by having people (or bots) falsely cause hits on their pages, etc. I don't think that's the case here but I'm not sure.
This isn't my project, but someone mentioned it to me and I found it intriguing. What possible benefit would a bot or hacker have from doing this? Each attempt has been unsuccessful but even if it got through, what's the point? Did someone actually send a bot to try and spam educational websites where all you can do is submit an inquiry to a school? What's going on here, ideas?
My best guess is that it's a bot someone put out there and it's hitting our site by mistake. I don't get it, but I'm not a security ninja. I would love possible scenarios, preferably evidence/fact-based, not opinions if you can't back it up - nothing personal, it's just that I know these are the rules of Stack Overflow.
So if you have a fact-based hypothesis why this may be happening, I would love to understand the how/why...
I don't think that you will ever find any useful answer to your question, because there are lots of reasons that someone may do this. It may be "for fun", increase google ranking, or there are personal "rivalries" between someone else with the company.
Well, you can see at least if the spam comes from automated bot ( if you can change the html/backend code), using the honeypot method, nested somewhere in the form. If the spam stops, it should be an automated spam bot, and most likely you should consider it as a random spam, otherwise someone may have created a spam script for your site and they may do for fun or for other purposes.
P.S. : Do not use ReCaptcha, as some bots can break it.
It's most likely a bot attempting SQL injection.
How does the SQL injection from the "Bobby Tables" XKCD comic work?
The bot isn't trying to insert data into your database. It is trying to maliciously craft responses so that it can retrieve data from your database, or perhaps just delete all of it.
You need to make sure that all your SQL queries are properly escaped to prevent request data from the bot modifying database queries to work in unintended ways.
If you provide some examples of the requests, StackOverflow will be be able to tell you exactly what's going on.

Where can I get Professional Crystal Reports developer support?

I have been struggling for days with a crystal report now. No one can answer my query on stack overflow so is there anywhere I can get some developer support for crystal.
Ideally I want a business objects developer to connect to my machine, look at my code and tell me why the database name refuses to change in any of the examples crystal have provided.
If anyone knows of anyone offering this kind of service, or has some working code to change the database of a crystal report at runtime.
I have asked the question at https://stackoverflow.com/questions/4723903/crystal-report-pain-cant-seem-to-change-database
Why is something that should be so simple such a waste of time!?
Part of the problem with your other question is that you didn't include the "Crystal-reports" tag, just the "Crystal-reports 2008" tag. The former is more common and gives you a much wider audience. Fixed.
This doesn't happen too often, but your other question is actually giving users a case of "information overload". I did a print preview and it came out to 7 pages. Can you cut back on some of the code? (Yes, you might accidently omit the real source of the problem, but that's just life)
Paid consultants may be more dedicated to finding the answer, but he/she isn't necessarily smarter. Try the official support page # http://www.sdn.sap.com/irj/boc/support. If you purchase a "maintenance agreement" with SAP, you'll get exactly the professional support you're looking for.
(After all this talking, I'd like to just answer your question and be done with it, but I don't know ASP.)
You could also try BOB.

Search engine optimization - Developer guidance? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I've just picked up a contract to sort out a vipers-nest of e-commerce websites that a previous 'developer' left for one of my clients. There's about a couple of dozen of them using a custom shopping cart and CMS system that's too embedded to dump and works well enough, but desperately needs cleaning up, re-factoring, and bug fixing, so a reasonably substantial recoding job.
As part of this my client is desperate to ensure the best search engine placement he can get. Like many developers I've a nodding acquaintance with the idea, but no real knowledge, and it seems that it would be helpful to get up to speed on this so I can build appropriately into the code.
So can people advise on useful quality resources - books, websites, blogs etc? I do not wish to obsess over every last detail on this (he can use a specialist if he decides to pull every last ounce out - although I've always regarded such as little better than snake-oil peddlers), but I would like to build code and reconfigure templates in a manner that helps rather than hinders placement.
Look at Wikipedia with styles off. See how they order their content? See how they use correct tags to label the content? These are the keys to long term success.
The most important SEO advice is to create a semantic, logical site. The content comes first and is ordered by importance. Use the correct tags, don't do tables. Then apply styles. Then apply script to make it fancy. (Like Tomas said)
Know the difference between what is content (pictures of your products) and not (your logo tiled on the background). Basically do your best to present good content in a good way. You can't game the system for long term gains.
This will give you long term placement. Most SEO companies just do tricks or links farms or worry about keywords and meta tags, so they are temporary at best. I think it is good to assume that Google works just as hard to drop that crap from it's index as the SEO marketers do to include it.
According to Google's patent
Age of domain.
Important sites that link to you.
Content. Make it real and accurate.
http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=1&u=/netahtml/PTO/search-bool.html&r=1&f=G&l=50&co1=AND&d=PG01&s1=20050071741&OS=20050071741&RS=20050071741
A main concern when thinking SEO should always be usability. Make sure the mark-up is semantic, make sure the site works without javascript, css and images - in other words, make sure that 'low-level browsers' are able to read the contents of your page. Think of optimizing the site for a screen reader for the blind and visually impaired, and you will automatically cover the search engines, because that is exactly what they are - blind browsers.
A standard no-no is a table layout, mainly because it does not order the site content by relevance. To a human being reading your site, it is no problem looking two inches down instead of at the very top of your page, but the screenreader reads the code, not the visual view.
Thus, you should make sure that you have the important things - a high-level heading (preferrably <h1> or <h2>), the main menu (in a <ul> list) and the content in divs at the top of the source, and less important content (the logo, banners, quickmenus etc that aren't really crucially needed to be accessible) further down. You are always able to re-order where the stuff is actually shown in your css.
New tag to use called CANONICAL can now also be used, from Google, click HERE

How can I organize all my code, data, scripts, tasks etc? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
What tools or approaches would you recommend to a 'one-man team' to keep organized?
I'm doing research that involves a lot of coding, writing hundreds of throw-away perl scripts, C++ binaries that get used until I find some better approach, large amounts of data that gets preprocessed in different ways, where some new preprocessing makes the old way obsolete -- until I find out that the old way was actually better, and so on. My work is inherently a moving target, as I have to try many things out, and often none of it is perfect.
It's not a completely chaotic situation, but it's also far from perfect. Are there general approaches that you would recommend in such a situation? I do use SVN for my code, although not for the different versions of the data because that gets too big. It's hard to keep track of all the scripts and binaries, so I always comment them, write down how I ran them etc. But I'm curious if you have some additional ideas.
(I work on a linux system.)
I'm using a wiki (TiddlyWiki in my case, as that runs absolutely anywhere - all it needs is a browser with JavaScript) as my "engineers notebook". Almost anything goes in there - lists of questions (and later on their answers), procedures (steps by step instructions), notes of what I put where (might work for your "data"), phone numbers (easy to find with a full text search), anything goes.
As my tasks are not that code-heavy, I'm even using it to store code-snippets (mostly SQL statements for me). Using a "real" versioning system is better if you want to keep track of different versions. Other than "use it" I can't offer specific advice for this area.
However, what has been important for me in GTD fashion: Use a simple system for almost everything. That way, the time to search for something and to decide what to put where is cut down.
Keep all your code in your Version Control System, and create build/run scripts for each. Your data you are going to have to carefully file away (since you don't want to put it in SVN).
The other thing I would add would be a wiki so you can make notes quickly about each test/script/application.
why not checkout some opensource projects to see how they organize their code bases?
even though you are a one-man team. it'd be smart to organize your project so it would be easy to add more programmers.
also if you're worried about filesize for data files you might want to checkout git. the index size is usually a lot smaller than that of svn.
Version Control is a must, as others said. Keeping descriptive labels of milestones on Version Control is very very helpful I think.
Also as IronGoofy said, I keep my snippets in my Personal Wiki TiddlyWiki, I uploaded it to my website, so I can access it anywhere, anytime.
As an additional option you may think a Time Tracker application. There are many free Time Trackers. I use ASP.NET's Time Tracker Starter Kit. You can keep evolution of your software, bugfixes, milestones.

What's a good way to train employees on how to use the software you've just created? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I'm working in a small company and weeks away from deploying a web-app that will be used a lot. Everyone at one location will have to learn to use it, and although I think it's pretty easy and intuitive I may be biased.
I've written a help guide with plenty of screenshots that's available on every page, but I'll still need to train everyone. What's the best way? How do you take a step back and explain code you've been working on for weeks?
First try to avoid the training:
Perform usability testing to ensure your web app is intuitive. Usability testing is a very important aspect of testing and it is often ignored. How you see your system will probably be very different as how a new user sees your system.
Also add contextual help as often as you can. For example when I hover over a tag in stack overflow, I know exactly what clicking it will do, because it tells me.
Also this may seem obvious, but make sure you link to your documentation from the site itself. People may not think of looking in your documentation unless its right in front of their eyes.
About training documentation:
Try to split up your material into how your users would use the system. I personally like the "trails" option that Sun created for their Java tutorials. In this tutorial you can do several things, and you can chose on which trail you'd like to go.
Support random reads in your help documentation. If they have a task to do in your web app, then they should be able to get help on that without reading a bunch of unrelated content.
Make sure your documentation is searchable.
About actual training sessions:
If you are actually performing training sessions, stay away from explaining anything related to your code at all. You don't need to know about the engine to drive a car.
Try to split up your training sessions into very focused aspects of your system. If you only have 1 training session available to you then just do one specialized use case of your system + the overall description of the system. Refer to the different parts of documentation where they can get help.
Letting the community help itself:
No matter how extensive your documentation is, you'll always have cases that you didn't cover. That's why it's a good idea to have a forum available to all users of the system. Allow them to ask each other questions.
You can review this forum and add content to your documentation as needed.
You could also open up a wiki for the documentation itself, but this is probably not desirable if your user base isn't very large.
Few ideas:
Do you have some canned walk-through scenarios? Don't know if it is applicable for your product, but I built a pretty substantial product a couple years ago and developed some training modules that they'd work through - nothing long, maybe 15 minutes tops for each one.
I put together a slide presentation that hit the highlights to talk about what it does. I would spend about 10 minutes going through the app's highlights to familiarize them with it before doing the hands-on stuff.
People don't tend to read stuff, unfortunately. You could put hours and hours into a help document, and still find that folks simply don't read it or skim over it. That can be frustrating. Expect that answers that are in your guide will be the topic of questions your users will have.
Break up any training you do into manageable chunks. I've been to a full-day training exercise before and the trainer broke it into short pieces and made it easy for me to get the training topic in my head. You don't want to data-dump on them because their eyes will gloss over and you'll lose them.
Ultimately, if your app is highly usable, it should be a piece of cake. If it isn't, you'll find out. You might want to have a few folks you know run through your training ahead of time and give you constructive criticism on it. Better to fix it before the big group is trained. You'll be more confident in the product and the training materials (whatever they are) and you'll likely have a better training experience.
If applicable, provide an online help/wiki/faq for them. Sometimes that is helpful.
Best of luck!
You should really have addressed this issue a lot earlier in the development cycle than you are doing.
In my view the ideal scenario for corporate software is one where the users design their own application and write their own documentation and I always try to strive for this. You should have identified key users early on and designed the system with them (I try to get my users to do basic screen designs and menu layouts in Excel or similar - then I implement that as static pages and review before writing a line of significant code, obviously they won't get the design right first time, but it's your job to guide them - and ideally in a way where they think they came up with the correct design decisions, not you :-) ).
These users should then write the user documentation from this design in parallel with you developing the system. I have never seen help documentation delivered by a IT department/software company used significantly in a corporate setting. Instead what happens is the users will create their own folder of notes and work-arounds and refer to this (in fact if you're ever doing system analysis to replace an existing system finding the 'user-bible' for the old system is a key strategy). Getting the users to write their own documentation up-front simply harnesses what will happen anyway - but this is vastly easier if the users feel they have ownership of the system because they designed it themselves in the first place.
Of course this approach needs commitment and time from your users, but generally it's not that hard a sell. It's trite, but working as a facilitator so the users can develop there own system rather than as a third party to give them a system pretty much guarantees user acceptance.
As you are where you are you're too late to implement all of this, but if you can identify a couple of keen, key, users and get time from them to write their own documentation then that would be a good move. If you can't get even that then you need to identify an evangelist who you can train to be the 'departmental' expert and give them 110% of your energy to support them.
The bottom line is that user acceptance is based on perception, and this does not necessarily correlate with how usable an system actually is. You have to focus on the group psychology of this as much as the reality of the system, which tends to be tricky for developers as we're much more factually based than most people.
I'll be looking into something like this too in the next few months.
In your case, hopefully the UI has already undergone user acceptance testing. You say you work in a small company. Is it possible to get the least tech-savvy person there to try it out? In fact, get them to try it out without any guidance from yourself except for questions they ask. Document the questions and make sure your user-guide answers them.
The main thing for me would be logic and consistency. If the app's workflow relates logically to the task it has been designed to accomplish and the UI is consistent you should be OK.
Create a wiki page to describe the use of your system. Giving edit rights to the users of your system lets the users:
update the documentation to correct any errors in the initial release of documentation,
share any tips on usage they may have found.
share unusual uses for the system that you may not have thought of.
request features.
provide any workarounds they've found while waiting for the new functionality to be implemented.
Try a few users first, one or two in a small company. Mostly watch, help as little as possible. This tells you what needs to be fixed, and it creates an experienced user base - so you are not the "training bottleneck" anymore.
Turn core requirements/use cases/storycards into HowTo / walkthroughs for your documentation.
For a public training, prepare a 10..15 minute presentation (just that, not more!) that covers key concepts that the users absolutely must understand, than show your core walkthroughs. Reserve extra time for questions about how to solve various tasks.
Think as a user, not as a techie: - noone cares if it's a SQL database and you spent a lot of time to get the locking mechanisms right. They do care about "does it slow me down" and "does something bad happen when two people do that at the same time". Our job is to make complicated things look easy.
It may help to put the documentation on the intranet in an editable form - page "comments", or wiki maybe. And/or put up a "error wiki" for error messages and blips - where you or your users can quickly add recomendations, workarounds and reasons for anything that does not go as expected.
Rather then train all those people I have chosen a few superusers (at least one person from each department) and trained them to teach the rest of the employees. It is of course vital that those super users are
well respected in their departments
able to teach
like the application
The easy way to ensure that they like the app is to have them to define the way it should work :-). Since they should work with this app each and every day they are the prime stakeholders, no matter what management states