The UDF repository for MySQL is a community project that aims to offer an organized collection of open source MySQL user defined functions.
MySQL UDFs offer a powerful way to extend the functionality of your MySQL database. The UDFs on this site are all free: free to use, free to distribute, free to modify and free of charge, even for commercial projects.
Sono un ingegnere informatico libero professionista e mi occupo della progettazione e di implementazione di soluzioni CRM per le PMI. Offro consulenza sia tecnica e quindi di sviluppo moduli, modifica moduli esistenti, integrazioni di sistema, ma anche consulenza relativa alla (re)ingegnerizzazione del processo aziendale.
Thursday, October 7, 2010
Friday, October 1, 2010
Mysql cumulated sum
Sometimes we need to obtain a cumulative sum of a columns in a query. How we can do it?
Suppose you have this simple table
id|in|out
----------
1 5 0
2 0 6
3 2 0
4 3 0
5 0 4
and you want obtain the cumulative sum of the column (in+out) like this
id|in|out|sum
-------------
1 5 0 5
2 0 6 11
3 2 0 13
4 3 0 16
5 0 4 20
This following query to do this
SELECT a.id, a.in, a.out,
Suppose you have this simple table
id|in|out
----------
1 5 0
2 0 6
3 2 0
4 3 0
5 0 4
and you want obtain the cumulative sum of the column (in+out) like this
id|in|out|sum
-------------
1 5 0 5
2 0 6 11
3 2 0 13
4 3 0 16
5 0 4 20
This following query to do this
SELECT a.id, a.in, a.out,
-- this is the new column called sum
( SELECT SUM( in + out )
FROM mytable b
WHERE b.id <= a.id
( SELECT SUM( in + out )
FROM mytable b
WHERE b.id <= a.id
) AS sum
FROM mytable a
ORDER BY id
ORDER BY id
Monday, September 13, 2010
Best chart libraries
Charts are an indispensable part of any data visualization work. People can grok visual representation of data easily than a textual variety. Today there are a huge number of free chart libraries available to display visualizations on websites. Below is a small list of some of the libraries available for displaying charts using php.
pChart - a PHP class to build charts
pChart is a PHP class oriented framework designed to create aliased charts. Most of todays chart libraries have a cost, our project is intended to be free. Data can be retrieved from SQL queries, CSV files, or manually provided. This project is still under development and new features or fix are made every week.
Focus has been put on rendering quality introducing an aliasing algorithm to draw eye candy graphics. Rendering speed has been dramatically enhanced since the first version, we'll still continue optimising the code!
JpGraph
JpGraph is an Object-Oriented Graph creating library for PHP >= 5.1 The library is completely written in PHP and ready to be used in any PHP scripts (both CGI/APXS/CLI versions of PHP are supported).
Libchart Simple PHP chart drawing library
Libchart is a free chart creation PHP library, that is easy to use.
This new version features multiple datasets for horizontal, vertical bar charts and line charts. The API got a facelift so be sure to check the examples so you don't miss anything.
FusionCharts
(show more)
Advanced Graphs and Charts for PHP
Many new chart styles added to the Extented Collection.
Friday, August 27, 2010
VisualVM - All in one Java Troubleshooting Tool
VisualVM is a visual tool integrating several commandline JDK tools and lightweight profiling capabilities. Designed for both production and development time use, it further enhances the capability of monitoring and performance analysis for the Java SE platform. Go to VisualVM or see screencast.
Wednesday, July 28, 2010
Lucid desktop
Lucid desktop, A web operating system (WebOS) software that allow you setup own web desktop OS online. This open source WebOS is built with PHP and uses a SQL database for storing data. Plus more, Lucid Desktop WebOS is a multi-user application , which is very modular with the support for installable applications.
With Lucid desktop WebOS, you can access your media,office documents, and other files anywhere. Meanwhile, user can stay up to date with Twitter, RSS feeds, and what’s happening on the web. Plus more, Lucid Desktop already comes with lots of applications like text editor, calculator, image viewer, simple games, web browser, feed reader, music player and more.
With the help of a file manager, you can add-edit-delete files and folders (a context menu makes these steps easier), change the appearance of the desktop with theme support and auto-update the OS to the latest version.
With Lucid desktop WebOS, you can access your media,
With the help of a file manager, you can add-edit-delete files and folders (a context menu makes these steps easier), change the appearance of the desktop with theme support and auto-update the OS to the latest version.
Lucid Desktop Main Features:
- Extremely customizable: Lucid allows you to pick your own theme, panel layout, and more! Themes and wallpaper can be customized, and additional themes can be installed. You can customize your desktop even more by creating/moving panels, and adding applets to panels. The intensity of effects can also be customized, which can be used to disable animations for slower browsers.
- Multiple language support: Your locale is automatically detected, and text will appear in your native language. Lucid will even format dates, time, and currency according to your locale. If Lucid does not support your language yet, it will default to English.
- Easy-to-use file management: Lucid’s file manager acts like any other file manager. It supports drag-and-drop, and copy/paste. You can upload files, and create folders. You can also double-click a file to open it in an application.
- Take your files with you on the go: You can access any files on Lucid from your mobile phone, using the mobile file browser. Just navigate to your installation, and add /mobile/ to the end.
- Powerful user management: With Lucid, you can get down to the nitty-gritty when it comes to user management. It has powerful permissions system that allow administrators to limit features such as administration, cross-site requests, and the ability to login. It also has filesystem quotas, to limit how much disk space a user can use. You can also organize users with groups. Permissions and quotas can be set on a per-user, per-group, or global level, which makes user management simple.
- Easy to create applications: Lucid has everything you need to write powerful applications with ease. You can use the built-in IDE to rapidly develop applications from within the desktop itself. The best part is, you don’t have to write a single line of server-side code! Applications can be written completely in javascript using the Dojo Toolkit, and can even have their own custom widgets.
sqldf: SQL select on R data frames
sqldf is an R package for runing SQL statements on R data frames, optimized for convenience. The user simply specifies an SQL statement in R using data frame names in place of table names and a database with appropriate table layouts/schema is automatically created, the data frames are automatically loaded into the database, the specified SQL statement is performed, the result is read back into R and the database is deleted all automatically behind the scenes making the database's existence transparent to the user who only specifies the SQL statement. Surprisingly this can at times be faster than the corresponding pure R calculation (although the purpose of the project is convenience and not speed). sqldf is free software published under the GNU General Public License that can be downloaded from CRAN.
Friday, July 23, 2010
JDBC Tutorial
The JDBC API is a Java API that can access any kind of tabular data, especially data stored in a Relational Database.
JDBC stands for Java Database Connectivity.
JDBC works with Java on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX.
This tutorial gives a complete understanding on JDBC.
Tuesday, July 13, 2010
Export CSV directly from MySQL
How ofter were you asked by a client for a CSV (or excel) file with data from their app? I get asked that question quite often, so I wanted make the process as easy as possible. And guess what? You can create CSV files directly from MySQL with just one query!
Let’s say you want to export the id, name and email fields from your users table to a CSV file. Here is your code:
Make sure your MySQL server has write permissions to the location where you want to store your results file.
Let’s say you want to export the id, name and email fields from your users table to a CSV file. Here is your code:
SELECT id, name, email INTO OUTFILE '/tmp/result.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY ‘\\’
LINES TERMINATED BY '\n'
FROM users WHERE 1
Well, if you know MySQL, you’ll know how to customize this query to spit out the the right data. Your csv file can be found in /tmp/result.csvMake sure your MySQL server has write permissions to the location where you want to store your results file.
Friday, July 9, 2010
Select previous and next row from a Mysql table
Previous ID:
SELECT id FROM $mytable WHERE id < $id ORDER BY ID DESC LIMIT 1;Next ID:
SELECT id FROM $mytable WHERE id > $id ORDER BY ID ASC LIMIT 1;
(thanks to Bob Field)
Wednesday, July 7, 2010
Load CSV file into Mysql table
LOAD DATA INFILE
can be used to read files obtained from external sources. For example, many programs can export data in comma-separated values (CSV) format, such that lines have fields separated by commas and enclosed within double quotation marks, with an initial line of column names. If the lines in such a file are terminated by carriage return/newline pairs, the statement shown here illustrates the field- and line-handling options you would use to load the file: LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;
Wednesday, May 19, 2010
MySQL Visual Explain – Hierarchical View of Query Execution Plan
EXPLAIN statement is used to obtain information about how MySQL executes a SELECT statement to check whether indexes are being used properly, and what kind of join is being performed. EXPLAIN output can sometimes be very hard to understand when it comes to long and complex queries.
Here comes MySQL Visual Explain, a command-line tool that transforms EXPLAIN output into a hierarchical view of the query execution plan. MySQL Visual Explain collects the output of EXPLAIN in MySQL and visualize it in treeview to make the reading more understandable. It is very useful when you have large and complex queries.
How It Works:
MySQL Visual Explain tries to reverse-engineer MySQL’s EXPLAIN output into a query execution plan, which it then formats as a left-deep tree — the same way the plan is represented inside MySQL.
Example query:
SELECT actor_id, (SELECT COUNT(film_id) FROM sakila.film JOIN sakila.film_actor USING(film_id)) FROM sakila.actor;
Here comes MySQL Visual Explain, a command-line tool that transforms EXPLAIN output into a hierarchical view of the query execution plan. MySQL Visual Explain collects the output of EXPLAIN in MySQL and visualize it in treeview to make the reading more understandable. It is very useful when you have large and complex queries.
How It Works:
MySQL Visual Explain tries to reverse-engineer MySQL’s EXPLAIN output into a query execution plan, which it then formats as a left-deep tree — the same way the plan is represented inside MySQL.
Example query:
SELECT actor_id, (SELECT COUNT(film_id) FROM sakila.film JOIN sakila.film_actor USING(film_id)) FROM sakila.actor;
Wednesday, April 14, 2010
Esper - Event Stream and Complex Event Processing for Java
Analyzing and reacting to information in real-time oftentimes requires the development of custom applications. Typically these applications must obtain the data to analyze, filter data, derive information and then indicate this information through some form of presentation or communication. Data may arrive with high frequency requiring high throughput processing. And applications may need to be flexible and react to changes in requirements while the data is processed. Esper is an event stream processor that aims to enable a short development cycle from inception to production for these types of applications.
See web page at: http://esper.codehaus.org/
Excelsior Automated Trading Platform
Excelsior is a next generation automated trading platform designed to support the rapid development of 'black box', quantitative trading systems. A sample Long-Short Equity strategy is featured to demonstrate the platform's capabilities.
Tuesday, March 23, 2010
FIX Analyzer
ValidFIX is a website for anybody who works with the FIX Protocol
ValidFix comes with two services:
There is nothing to download.
Just copy and paste your data in our services and see the results.
ValidFix comes with two services:
- FIX Analyzer- to inspect one single fix message
- FIX Log Analyzer- to inspect sections of logs produced by any FIX Application
There is nothing to download.
Just copy and paste your data in our services and see the results.
Friday, March 19, 2010
Fix client server program
Mini-FIX is a C++ Windows FIX client/server GUI application.
The Financial Information eXchange (FIX) protocol is an electronic communications protocol initiated in 1992 for international real-time exchange of information related to the securities transactions and markets.
Mini-FIX is a client/server able to communicate using this protocol with a high degree of freedom and transparency, well suited for developing and testing other FIX applications.
You can download it from here
The Financial Information eXchange (FIX) protocol is an electronic communications protocol initiated in 1992 for international real-time exchange of information related to the securities transactions and markets.
Mini-FIX is a client/server able to communicate using this protocol with a high degree of freedom and transparency, well suited for developing and testing other FIX applications.
You can download it from here
Wednesday, March 17, 2010
Define new data provider for Marketcetera
In this post I would like to explain how create new provider for Marketcetera.
I started from the CSV Market Data Adapter example, see instructions for install or compile via code.
After that if you want change provider name read the following instructions.
I started from the CSV Market Data Adapter example, see instructions for install or compile via code.
After that if you want change provider name read the following instructions.
- Refactor package name from
org.marketcetera.marketdata.csv;to
org.marketcetera.marketdata.YOUR_PREFERITE_PROVIDER;
- Edit file org.marketcetera.module.ModuleFactory and insert this line
org.marketcetera.marketdata.YOUR_PREFERITE_PROVIDER.MarketceteraFeedModuleFactory
- Edit file CSVFeedModuleFactory.java and overwrite this line
public static final String IDENTIFIER = "YOUR_PREFERITE_PROVIDER";
- Edit file CSVFeedFactory.java
public String getProviderName() { return "YOUR_PREFERITE_PROVIDER"; }
- Edit file Message.java
static final I18NMessageProvider PROVIDER = new I18NMessageProvider("YOUR_PREFERITE_PROVIDER", Messages.class.getClassLoader());
- Rename all java source file according with YOUR_PREFERITE_PROVIDER
- Change provider name in your strategy
- Call mvn-package
- Overwrite generated jar
- Start strategy with new provider
Tuesday, March 16, 2010
Open source libraries and trading systems review
In this post I reviewed some of the most important trading systems and financial librarys on the net.
SFL Java Trading System Enviroment
The SFL Java Trading System Enviroment is a java application built on
KISS principle (Keep It Simple,Stupid) and its aim is to provide a fast and platform indipendent infrastructure to develop and execute trading Systems.
KISS principle (Keep It Simple,Stupid) and its aim is to provide a fast and platform indipendent infrastructure to develop and execute trading Systems.
EclipseTrade
Stock exchange analysis system, featuring shares pricing watch, intraday and history charts with technical analysis indicators, level II/market depth view, news watching, automated trading systems, integrated trading. Based on Eclipse RCP framework.
JsystemTrader
http://code.google.com/p/jsystemtrader/
http://code.google.com/p/jsystemtrader/
JSystemTrader is a fully automated trading system (ATS) that can trade various types of market securities during the trading day without user monitoring. All aspects of trading, such as obtaining historical and real time quotes, analyzing price patterns, making trading decisions, placing orders, monitoring order executions, and controlling the risk are automated according to the user preferences. The central idea behind JSystemTrader is to completely remove the emotions from trading, so that the trading system can systematically and consistently follow a predefined set of rules.
Matrex
http://sourceforge.net/projects/matrex
Use Matrex, the un-spreadsheet, instead of spreadsheets when working with vectors (e.g. database data, charts) and matrices. The perfect desktop tool for mathematical, statistical models and complex calculations. Adapters to matlab, scilab, octave, R.
AIOTrade
http://sourceforge.net/projects/humaitrader
AIOTrade (formerly Humai Trader Platform) is a free, open source stock technical analysis platform built on pure java. Its pluggable architecture is also ideal for custom features extending, such as indicators and charts. It Requires JRE 1.5.0+.
Merchant of Venice
Venice is a stock market trading programme that supports portfolio management, charting, technical analysis, paper trading and genetic programming. Venice runs in a graphical user interface with online help and has full documentation.
Market Analysis System
http://sourceforge.net/projects/eiffel-mas
Market Analysis System
http://sourceforge.net/projects/eiffel-mas
http://eiffel-mas.sourceforge.net/
System for analysis of financial markets using technical analysis.Includes facilities for stock charting and futures charting, as well as automated generation of trading signals based on user-selected criteria. Operates on both daily and intraday data.
Open Java Trading System
http://sourceforge.net/projects/ojts/
System for analysis of financial markets using technical analysis.Includes facilities for stock charting and futures charting, as well as automated generation of trading signals based on user-selected criteria. Operates on both daily and intraday data.
Open Java Trading System
http://sourceforge.net/projects/ojts/
http://ojts.sourceforge.net/
The Open Java Trading System (OJTS) is meant to be a common infrastructure to develop (stock) trading systems. There are four parts: gathering of raw data over the internet, recognition of trading signals, a visualisation module and trading with banks.
Data Visualizer
http://sourceforge.net/projects/dataviews
The Open Java Trading System (OJTS) is meant to be a common infrastructure to develop (stock) trading systems. There are four parts: gathering of raw data over the internet, recognition of trading signals, a visualisation module and trading with banks.
Data Visualizer
http://sourceforge.net/projects/dataviews
http://dataviews.sourceforge.net/
Modular environment for graphical visualization of stock market type data
Auge
http://sourceforge.net/projects/auge
Modular environment for graphical visualization of stock market type data
Auge
http://sourceforge.net/projects/auge
Auge is an easy-to-use financial portfolio management application. Auge will help you monitor and analyze your stock and mutual fund positions, providing powerful insight into your entire investment portfolio.
CCAPI2
http://www.activestocks.eu/?q=node/1
http://www.activestocks.eu/
The open source finance library on the net. A java library for automated stock trading, sub fields of financial engineering and automated financial instrument analysis. A java financial library. The CCAPI It is also a algorithm trading application framework. CCAPI is the premium open source java library for developing stock exchange related applications on the net. Various common indicators, methods for creating charts and direct trade interfaces to selected brokers are available for your fingertips.
Marketcetera
http://trac.marketcetera.org/
The open source finance library on the net. A java library for automated stock trading, sub fields of financial engineering and automated financial instrument analysis. A java financial library. The CCAPI It is also a algorithm trading application framework. CCAPI is the premium open source java library for developing stock exchange related applications on the net. Various common indicators, methods for creating charts and direct trade interfaces to selected brokers are available for your fingertips.
Marketcetera
http://trac.marketcetera.org/
http://www.marketcetera.com/
Marketcetera LLC is building a new software platform committed to providing fast, flexible and reliable securities trading tools to financial services professionals. Our mission is to make world-class order management and risk-management software available and affordable to individuals and to institutions of all sizes. Marketcetera focuses on building the key trading functions that are common to all organizations, thus freeing our clients to concentrate on proprietary trading algorithms and other specialized software that provide a competitive advantage.
Oropuro trading system
http://sourceforge.net/projects/oropuro
Marketcetera LLC is building a new software platform committed to providing fast, flexible and reliable securities trading tools to financial services professionals. Our mission is to make world-class order management and risk-management software available and affordable to individuals and to institutions of all sizes. Marketcetera focuses on building the key trading functions that are common to all organizations, thus freeing our clients to concentrate on proprietary trading algorithms and other specialized software that provide a competitive advantage.
Oropuro trading system
http://sourceforge.net/projects/oropuro
http://www.oropuro.org
Complete technical analysis & trading system, full set of features: retrieve, analyze EOD stocks data; manage multiple portfolios; technical analysis & graphical rendering; neural networks for generation of trading signals; support trader community
TrueTrade
http://code.google.com/p/truetrade/
Complete technical analysis & trading system, full set of features: retrieve, analyze EOD stocks data; manage multiple portfolios; technical analysis & graphical rendering; neural networks for generation of trading signals; support trader community
TrueTrade
http://code.google.com/p/truetrade/
TrueTrade is a framework for developing, testing and running automatic trading systems. It is intended to provide support for a wide range of orders, financial instruments and time scales. It provides tooling for backtesting the strategy against historical data, and a separate tool for running the strategies in live mode. Strategies currently require some Java coding experience, though this may change at a later date. It is currently in prealpha mode and should not be used against a live trading account.
Open forex platform
http://www.openforexplatform.com/
Open Forex Platform is an open source financial instruments trading platform. It features custom developed charts and GUI, 100+ trading indicators, back testing on historical data and working on live trading accounts. It also has the capability to integrate with other platforms to allow trading and data acquisition.
jbooktrader
http://code.google.com/p/jbooktrader/
JBookTrader is a fully automated trading system (ATS) that can trade various types of market securities during the trading ay without user monitoring. All aspects of trading, such as obtaining market prices, analyzing price patterns, making trading ecisions, placing orders, monitoring order executions, and controlling the risk are automated according to the user references. The central idea behind JBookTrader is to completely remove emotions from trading, so that the trading system can systematically and consistently follow a predefined set of rules. The features include strategy back testing, optimization, market data recording, and real time trading via the Interactive Brokers API.JBookTrader is written in Java and is intended for software developers. It is not an "off-the-shelf" product that can be installed and run. Instead, JBookTrader provides a framework for developing automated trading systems and requires a certain amount of programming knowledge and experience in Java. If you are not a software developer or if you don't have much experience programming in Java, JBookTrader is probably not for you.
TrueTrade
http://code.google.com/p/truetrade/
TrueTrade is a framework for developing, testing and running automatic trading systems. It is intended to provide support for a wide range of orders, financial instruments and time scales. It provides tooling for backtesting the strategy against historical data, and a separate tool for running the strategies in live mode. Strategies currently require some Java coding experience, though this may change at a later date. It is currently in pre-alpha mode and should not be used against a live trading account.
ActiveQuant
http://www.activestocks.eu/
AQ is a framework or an API for automated trading, opportunity detection, financial engineering, research in finance, connecting to brokers, etc. - basically everything around trading, written in Java, using Spring. All is published under a usage friendly open source license.
JQuantLib
http://www.jquantlib.org/
JQuantLib is a free, open-source, comprehensive framework for quantitative finance, written in Java. It provides "quants" and Java application developers several mathematical and statistical tools needed for the valuation of shares, options, futures, swaps, and other financial instruments, also providing tools related to risk management and money management. It's is a 100% Java framework based on QuantLib, which is written in C++. JQuantLib is not a mere translation of the C++ thing, but a complete rewrite intended to offer features that Java developers expect. JQuantLib aims to be fast, correct, strongly typed, well-documented, and user-friendly.
jrobotrader
http://jrobotrader.atspace.com/index.html
Robotrader is a simulation platform for automated stock exchange trading. It delivers statistics to analyse performance on historic data and allows comparison between trading strategies, that can be coded in Java. Version 0.2.7 of robotrader includes: Complete simulation platform with a graphical user interface, many sample trading strategies implemented, Yahoo quotes downloading, more statistics, more technical indicators.
Humai Trader
https://humaitrader.dev.java.net/
AIOTrade (i.e. Humai Trader) is a free, open source, stock technical analysis platform with a pluggable architecture that is ideal for extensions such as indicators and charts. It's built on pure java. For more information, please visit: aiotrade.com You may download the newest version via: sourceforge.net I now maintain a blog about AIOTrade and trading in general at blogtrader.net AIOTrade is a standalone application built on NetBeans Platform. The source code is organized as a NetBeans module-suite project.
TA-Lib : Technical Analysis Library
http://ta-lib.org/
TA-Lib is widely used by trading software developers requiring to perform technical analysis of financial market data.
Java Quant Financial Quantitative Algorithms
http://www.javaquant.net/
Here you will find information about the evaluation of financial options and the theory, definitions and models behind. This webpage provides Java Applets to calculate the price of complex financial options, using the Monte Carlo technique, Binary Trees, among others. The source code written in Java and C++, together with information about the structure of lasses is available. The programs have been written following the Object Oriented Paradigms. Check this table, with option pricing applets.
QuantLib
A free/open-source library for quantitative finance
The QuantLib project is aimed at providing a comprehensive software framework for quantitative finance. QuantLib is a free/open-source library for modeling, trading, and risk management in real-life.QuantLib is written in C++ with a clean object model, and is then exported to different languages such as C#, Objective Caml, Java, Perl, Python, GNU R, Ruby, and Scheme. The QuantLibAddin/QuantLibXL project uses ObjectHandler to export an object-oriented QuantLib interface to a variety of end-user platforms including Microsoft Excel and OpenOffice.org Calc. Bindings to other languages and porting to Gnumeric, Matlab/Octave, S-PLUS/R, Mathematica, COM/CORBA/SOAP architectures, FpML, are under consideration.
GeniusTrader
http://www.geniustrader.org/
The QuantLib project is aimed at providing a comprehensive software framework for quantitative finance. QuantLib is a free/open-source library for modeling, trading, and risk management in real-life.QuantLib is written in C++ with a clean object model, and is then exported to different languages such as C#, Objective Caml, Java, Perl, Python, GNU R, Ruby, and Scheme. The QuantLibAddin/QuantLibXL project uses ObjectHandler to export an object-oriented QuantLib interface to a variety of end-user platforms including Microsoft Excel and OpenOffice.org Calc. Bindings to other languages and porting to Gnumeric, Matlab/Octave, S-PLUS/R, Mathematica, COM/CORBA/SOAP architectures, FpML, are under consideration.
GeniusTrader
http://www.geniustrader.org/
GeniusTrader aims to be a full featured toolbox to create trading systems. Powerful systematic trading requires several things :many indicators and corresponding signals money management rules deciding what is a reasonable amount of money to put on a single trade (to limit the risk associated to that trade)combining different values within the portfolio (to limit the global risk)flexibility to be able to test all combinations with the above items backtesting system with analysis of results GeniusTrader already has support of most of this. GeniusTrader consists of a bunch of perl modules associated to a few perl scripts. It has no graphical user interface since it's absolutely not needed to achieve its goals
Monday, March 15, 2010
Valutazione del grado di maturità di soluzioni software Open Source
Per chi come me si fosse trovato a valutare delle soluzioni open source, suggerisco un modello che permette di definire dei rank di vari parametri fondamentali atti alla comparazione di più software.
FASE 0: Analisi del Contesto
Si raccolgono informazioni relative alla struttura ed al funzionamento dell'impresa. Da queste si stabiliscono una o più categorie software da valutare mediante il modello.
Successivamente viene redatta la lista dei prodotti candidati per l'inserimento e si definiscono i criteri sui quali effettuare la stima.
FASE 1: Selezione Preliminare
Tra i criteri definiti nella fase precedente si evidenzia l'insieme di quelli più critici.
Per tali criteri viene fissato un insieme di valori di soglia minimi che il software deve possedere per accedere alla fase successiva. Il filtraggio sarà tanto più selettivo quanto maggiore sarà il numero di criteri che devono essere soddisfatti.
Per tali criteri viene fissato un insieme di valori di soglia minimi che il software deve possedere per accedere alla fase successiva. Il filtraggio sarà tanto più selettivo quanto maggiore sarà il numero di criteri che devono essere soddisfatti.
FASE 2 : Filtraggio Decisionale
Le applicazioni selezionate precedentemente sono sottoposte ad una stima ulteriore, basata sui criteri definiti nella prima fase. In questa fase sono valutate esclusivamente le caratteristiche del prodotto. Ogni criterio ha un punteggio, valutato su una scala normalizzata di valori compresi tra 1 e 10. L'uniformità permette di differenziare l'importanza di ogni punteggio applicandovi un peso (moltiplicatore). Quest'ultimo viene fissato in base alle necessità dell'azienda. Il punteggio finale è ottenuto tramite la somma dei singoli punteggi pesati.
L'articolo continua qua
Create new Market data feed
In this post I would like to explain how build (from scratch) a new marked data feed adapter. My goal is build a module that can retrives price from market and use into Marketcetera strategy.
In this case I will connect to Currenex server.
...cooming soon...
In this case I will connect to Currenex server.
...cooming soon...
Friday, March 12, 2010
Strategy Agent
In this post I would like explain you how create your custom strategy and runs it in debug mode from your preferite IDE.
MarketData.java
public static void main(String[] args) {
String cmds = "MarketData.txt";
StrategyAgent.main(new String[]{cmds});
} catch (Exception e) {
e.printStackTrace();
}
import org.marketcetera.strategy.java.Strategy;
import org.marketcetera.event.AskEvent;
import org.marketcetera.event.BidEvent;
import org.marketcetera.event.TradeEvent;
import org.marketcetera.marketdata.MarketDataRequest;
import static org.marketcetera.marketdata.MarketDataRequest.*;
/* $License$ */
/**
* Strategy that receives market data
*
* @author anshul@marketcetera.com
* @version $Id$
* @since $Release$
*/
public class MarketData extends Strategy {
private static final String SYMBOLS = "AMZN,JAVA"; //Depends on MD - can be other symbols
private static final String MARKET_DATA_PROVIDER = "bogus"; // Can be activ, bogus, marketcetera
/**
* Executed when the strategy is started.
* Use this method to set up data flows
* and other initialization tasks.
*/
@Override
public void onStart() {
System.out.println("onStart");
requestMarketData(MarketDataRequest.newRequest().
withSymbols(SYMBOLS).
fromProvider(MARKET_DATA_PROVIDER).
withContent(Content.LATEST_TICK, Content.TOP_OF_BOOK));
}
/**
* Executed when the strategy receives an ask event.
*
* @param inAsk the ask event.
*/
@Override
public void onAsk(AskEvent inAsk) {
warn("Ask " + inAsk);
System.out.println(inAsk.toString());
}
/**
* Executed when the strategy receives a bid event.
*
* @param inBid the bid event.
*/
@Override
public void onBid(BidEvent inBid) {
warn("Bid " + inBid);
System.out.println(inBid.toString());
}
/**
* Executed when the strategy receives a trade event.
*
* @param inTrade the ask event.
*/
@Override
public void onTrade(TradeEvent inTrade) {
warn("Trade " + inTrade);
System.out.println(inTrade.toString());
}
}
Thursday, March 11, 2010
Marketcetera
Marketcetera LLC is building a new software platform committed to providing fast, flexible and reliable securities trading tools to financial services professionals. Our mission is to make world-class order management and risk-management software available and affordable to individuals and to institutions of all sizes. Marketcetera focuses on building the key trading functions that are common to all organizations, thus freeing our clients to concentrate on proprietary trading algorithms and other specialized software that provide a competitive advantage.

Subscribe to:
Posts (Atom)
Manage Vtiger Menu
How Manage and customize Vtiger Menu You need to modify the function getAppMenuList in the f...

-
In this post I reviewed some of the most important trading systems and financial librarys on the net. SFL Java Trading System Enviroment ht...
-
Charts are an indispensable part of any data visualization work. People can grok visual representation of data easily than a textual variet...
-
LOAD DATA INFILE can be used to read files obtained from external sources. For example, many programs can export data in ...