Multi window GUI driven charting application for stocks and commodities bar charts. Programmed in Java (platform independence). Charting capable of creating muti-time frame bar charts of opening price, high price, low price and closing price and chart indicators. Software capable of reading ASCII based data (intra day - multiple bars representing one day’s trading action, and end of day bars - one bar representing one day’s price action).
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables):
a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
* * *This broadcast message was sent to all bidders on Friday Mar 30, 2007 7:38:23 AM:
Additional Information on Excalibur Programming Project.
We would like a multi window charting application that plots data read from ascii files. This date would be in the form of:
Date ,Open,High,Low,Close,OpInt,Volume
20010101,10020,10040,9990,10030,300,4000
20010102,9990,10020,9980,9990,400,5000
I would like the program to be able to read comma, space, and tab delimited data.
This ascii data would be broken into multiple contract files with overlapping dates. I would like the application to splice the data into one smooth sequential data stream based on input from the user.
Example (note length of files have been shortened for brevity sake AND format changed for ease of reading)
BPH2006
20051123 17233 17233 17201 17201
20051125 17220 17220 17113 17121
20051128 17110 17330 17080 17322
20051129 17230 17230 17165 17192
20051130 17258 17340 17258 17286
20051201 17265 17338 17265 17320
20051202 17280 17370 17265 17333
20051205 17380 17423 17368 17423
20051206 17353 17423 17327 17417
20051207 17299 17347 17290 17343
20051208 17433 17547 17433 17533
20051209 17515 17560 17515 17543
20051212 17705 17770 17696 17754
20051213 17692 17719 17655 17692
20051214 17727 17760 17717 17727
20051215 17732 17737 17615 17640
20051216 17703 17730 17669 17722
20051219 17618 17644 17587 17624
20051220 17635 17637 17526 17546
20051221 17486 17491 17392 17444
20051222 17347 17415 17336 17379
20051223 17343 17343 17305 17326
20051227 17336 17345 17262 17265
20051228 17340 17340 17140 17146
20051229 17190 17280 17176 17233
20051230 17211 17222 17168 17187
20060103 17280 17454 17256 17449
20060104 17554 17616 17545 17579
20060105 17548 17576 17519 17560
20060106 17563 17720 17559 17707
20060109 17678 17680 17635 17650
20060110 17667 17670 17630 17656
20060111 17560 17671 175 58 17640
20060112 17687 17710 17586 17602
20060113 17676 17780 17672 17763
20060117 17619 17665 17591 17665
20060118 17668 17705 17590 17630
20060119 17551 17639 17549 17590
20060120 17627 17722 17610 17717
20060123 17864 17876 17838 17872
20060124 17851 17900 17845 17861
20060125 17891 17900 17841 17846
20060126 17864 17885 17781 17811
20060127 17786 17876 17670 17677
20060130 17663 17706 17646 17667
20060131 17704 17860 17696 17802
20060201 17764 17806 17734 17734
20060202 17787 17810 17745 17798
20060203 17763 17767 17593 17624
20060206 17532 17534 17436 17481
20060207 17448 17474 17407 17452
20060208 17423 17440 17380 17396
20060209 17406 17432 17381 17396
20060210 17501 17568 17430 17444
20060213 17397 17440 17362 17423
20060214 17359 17363 17282 17357
20060215 17425 17490 17383 17400
20060216 17335 17390 17320 17385
20060217 17342 17421 17342 17392
20060221 17460 17470 17420 17465
20060222 17380 17440 1 7376 17422
20060223 17553 17556 17490 17518
20060224 17484 17506 17428 17453
20060227 17403 17417 17388 17400
20060228 17484 17565 17466 17545
20060301 17561 17595 17461 17501
20060302 17455 17543 17435 17539
20060303 17560 17577 17508 17539
20060306 17535 17537 17473 17491
20060307 17351 17372 17342 17359
20060308 17364 17374 17346 17368
20060309 17380 17397 17350 17357
20060310 17370 17370 17243 17262
20060313 17274 17285 17262 17285
BPM2006
20060217 17440 17440 17412 17412
20060221 17442 17494 17442 17485
20060222 17416 17442 17416 17442
20060223 17560 17560 17525 17538
20060224 17502 17502 17440 17473
20060227 17420 17425 17416 17420
20060228 17500 17582 17493 17565
20060301 17575 17602 17487 17521
20060302 17473 17563 17473 17559
20060303 17585 17602 17540 17558
20060306 17556 17558 17494 17511
20060307 17365 17390 17350 17379
20060308 17384 17397 17370 17388
20060309 17400 17429 17374 17377
20060310 17386 17386 17250 17282
20060313 17298 17351 17280 17350
20060314 17382 17508 17376 17483
20060315 17470 17514 17455 17509
20060316 17484 17616 17484 17595
20060317 17568 17591 17535 17591
20060320 17572 17584 17556 17579
20060321 17515 17535 17469 17498
20060322 17479 17516 17477 17484
20060323 17448 17464 17349 17366
20060324 17344 17460 17336 17442
20060327 17483 17508 17483 17492
20060328 17526 17556 17448 17451
20060329 17353 17381 17334 17359
20060330 17419 17502 17407 17485
20060331 17386 17425 17357 17380
20060403 17308 17420 17287 17403
20060404 17521 17591 17517 17578
20060405 17525 17571 17501 17567
20060406 17589 17594 17508 17541
20060407 17510 17550 17423 17448
20060410 17458 17471 17395 17432
20060411 17447 17501 17447 17498
20060412 17557 17560 17476 17518
20060413 17541 17550 17498 17533
20060417 17710 17760 17688 17710
20060418 17745 17819 17738 17815
20060419 17863 17947 17832 17936
2006042 0 17853 17854 17773 17800
20060421 17813 17851 17800 17826
20060424 17893 17917 17820 17908
20060425 17913 17954 17850 17903
20060426 17872 17913 17821 17864
20060427 17854 18050 17852 18042
20060428 18071 18252 18070 18228
20060501 18285 18423 18260 18285
20060502 18387 18430 18365 18419
20060503 18415 18482 18378 18423
20060504 18439 18560 18427 18549
20060505 18504 18633 18502 18604
20060508 18638 18653 18562 18586
20060509 18592 18695 18587 18673
20060510 18632 18712 18625 18674
20060511 18654 18864 18654 18853
20060512 18940 18999 18895 18934
20060515 18842 18870 18793 18805
20060516 18832 18899 18827 18897
20060517 18968 19035 18788 18838
20060518 18865 18940 18862 18914
20060519 18780 18787 18720 18783
20060522 18746 18884 18746 18877
20060523 18829 18872 18792 18862
20060524 18830 18864 18665 18744
20060525 18684 18754 18684 18740
20060526 18676 18710 18538 18561
20060530 18748 18873 18720 18843
20060 531 18768 18772 18690 18697
20060601 18604 18691 18570 18654
20060602 18664 18860 18664 18836
20060605 18830 18830 18744 18744
20060606 18660 18660 18600 18627
20060607 18591 18610 18531 18568
20060608 18439 18445 18384 18420
20060609 18439 18458 18370 18416
20060612 18418 18454 18418 18454
20060613 18399 18399 18340 18342
20060614 18403 18482 18380 18422
20060615 18487 18510 18478 18478
20060616 18528 18528 18487 18515
20060619 18460 18460 18397 18397
Notice how the first files end date overlaps the second files begin date. If the user inputs "Day 6" for the rollover trigger (splice date) then the charting application would plot the first data file up until 20060306 and plot the second file starting from 20060307. The number of contracts on a yearly basis and the rollover trigger date is located in a master control file.
These files don't include the time, volume or opInt. Some files will have these additional fields . The header line could be used to show the number of fields. The file with these fields would look like
Date Time Open High Low Close Vol OpInt
20060619 0830 18460 18460 18397 18397 400 5000
20060619 0835 18460 18460 18397 18397 400 5000
20060619 0840 18460 18460 18397 18397 400 5000
The charting application would need to be able to plot the time in addition to the date on the time scale. The same splicing would be used just as we did in the previous example.
All of the data would be integer based. These data files can be large, so I am not sure what the best method would be to load the data into memory. We need a scrolling window across the entire history of data.
Please feel free to email with any further questions as I am sure many will arise. I have programmed a very similar project using C and Fortran so I am very familiar with the programming.
Thanks,
## Platform
Java based