use strict; use warnings; my $start = sprintf("%.2f",(1 + rand(100))); my $direction = sub { return rand(1) > 0.5 ? 1 : -1; }; my $varience = sub { return rand(0.05); }; my $range = sub { return rand(0.08); }; my $high; my $low; my $close; my @prices; for(1..1012){ if(!defined $high){ $high = sprintf("%.2f",( $direction->() * $varience->() * $start ) + $start); $low = sprintf("%.2f",( $high - ($high * $range->()))); $close = sprintf("%.2f",(rand($high - $low) + $low)); } else { $high = sprintf("%.2f",( $direction->() * $varience->() * $high ) + $high); $low = sprintf("%.2f",( $high - ($high * $range->()))); $close = sprintf("%.2f",(rand($high - $low) + $low)); } print "$high,$low,$close\n"; } exit;