package math;
import java.io.File;
import java.io.IOException;
import java.math.*;
import java.util.ArrayList;
import read_out.ExcelReader;
import map_test.gf;
public class Percentage {
private double highest=0;
private double lowest=0;
private double nowPrice=0;
private double ratio=0;
private double percentage=0;
public void setHighest(double highest){this.highest=highest;}
public void setLowest(double lowest){this.lowest=lowest;}
public void setNowPrice(double nowPrice){this.nowPrice=nowPrice;}
public void setRatio(double ratio){this.ratio=ratio;}
public double getHighest(){return this.highest;}
public double getLowest(){return this.lowest;}
public double getNowPrice(){return this.nowPrice;}
public double getRatio(){return this.ratio;}
Percentage(double highest,double lowest,double nowPrice,double ratio)
{
this.highest=highest;
this.lowest=lowest;
this.nowPrice=nowPrice;
this.ratio=ratio;
if(this.nowPrice>this.highest||this.nowPrice<this.lowest)
{
//System.out.alert("input wrong");}
}
if(this.nowPrice>0.5*(this.highest-this.lowest))
{
//System.out.alert("useless test");}
}
}
public double ratioPiCount()
{
double ratioPi=180/ratio;
return ratioPi;
}
public double areaCount()
{
double area=0;
area=(highest-lowest)*0.5*Math.tan(Math.PI/ratioPiCount())*(highest-lowest);
return area;
}
public double nowAreaCount()
{
double nowArea=0;
nowArea=(highest-nowPrice)*0.5*Math.tan(Math.PI/ratioPiCount())*(highest-nowPrice);
return nowArea;
}
public double countPercentage()
{
percentage=nowAreaCount()/areaCount();
return this.percentage;
}
public static void main(String args[]) throws IOException
{
// double area=testPercentage.areaCount();
// double percentage=testPercentage.countPercentage();
// System.out.println(percentage);
// System.out.println(area);
// System.out.println(testPercentage.nowAreaCount());
// System.out.println(testPercentage.countPercentage());
// MoneyMenagement moneyMenagement=new MoneyMenagement(100000);
// System.out.println(moneyMenagement.imagineStocksCount(testPercentage));
// System.out.println(moneyMenagement.realityStocksCount(testPercentage));
// Percentage testPercentage_1= new Percentage(20,8,10,30);
//
// MoneyMenagement moneyMenagement_a=new MoneyMenagement(100000);
// moneyMenagement_a.moneyMenagementInit(testPercentage_1);
// System.out.println("moneyMenagement_a:");
// moneyMenagement_a.showMoneyMenagement();
//
// Percentage testPercentage_2= new Percentage(20,8,8,30);
//
// MoneyMenagement moneyMenagement_b=MoneyMenagement.moneyMenagementRecount(moneyMenagement_a,testPercentage_2);
// moneyMenagement_b.moneyMenagementInit(testPercentage_2);
// System.out.println("moneyMenagement_b:");
// moneyMenagement_b.showMoneyMenagement();
//
// Percentage testPercentage_3= new Percentage(20,8,10,30);
//
// MoneyMenagement moneyMenagement_c=MoneyMenagement.moneyMenagementRecount(moneyMenagement_b,testPercentage_3);
// moneyMenagement_c.moneyMenagementInit(testPercentage_3);
// System.out.println("moneyMenagement_c:");
// moneyMenagement_c.showMoneyMenagement();
//double test[]={13,5,12,20,7,1,3,4,5};
//double test[]={13,12.8,12.2,13.2,13.4,13.44,13,11,9,8,10,13,15,14.5,14.4,14,11,13};
// //double test[]={14,12.89,12.08,13.5,13.70,12.80,13,14};
//
double test1[]={-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,
-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,
-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,
-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,
-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,-0.01,
-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,
0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,
0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,
0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,
0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,
0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,0.01,0.01,0.01,-0.01,-0.01,-0.01,-0.01,-0.01,
};
double test2[]=new double [test1.length+1] ;
double begin=11;
test2[0]=begin;
for(int i=1;i<test1.length+1;i++)
{
test2[i]=test2[i-1]*(test1[i-1]+1);
}
for(int i=0;i<test2.length;i++)
{
System.out.print(test2[i]+" ");
}
//
///excel//
File file = new File("d:\\test_excel\\test1.xls");
ExcelReader readExcel = new ExcelReader(file);
try {
readExcel.open();
} catch (IOException e) {
e.printStackTrace();
}
readExcel.setSheetNum(0); // 设置读取索引为0的工作表
// 总行数
int count = readExcel.getRowCount();
double test_excel[]=new double [count] ;
for (int i = 0; i < count; i++) {
String[] rows = readExcel.readExcelLine(i);
test_excel[i]=Double.parseDouble(rows[4]);
//for (int j = 0; j < rows.length; j++) {
//System.out.print(rows[4] + " ");
// }
//System.out.print("\n");
}
///excel//
ArrayList<PriceNow> test_3=new ArrayList<PriceNow>(test_excel.length);
for(int i=0;i<test_excel.length;i++)
{
test_3.add(new PriceNow());
}
for(int i=0;i<test_excel.length;i++)
{
test_3.get(i).value=test_excel[i];
System.out.print(test_3.get(i).value+" ");
}
System.out.println();
//MoneyMenagement moneyMenagement_a=new MoneyMenagement(100000);
//MoneyMenagement.moneyMenagementRecount_N(test2,20,8,30,100000);
//System.out.print(" ??????????????????????????????????????????");
ArrayList<PriceNow> out=new ArrayList<PriceNow>();
//MoneyMenagement.moneyMenagementRecount_N3(test_3,27,10,30,100000,0.05,out);
MoneyMenagement.moneyMenagementRecount_N4(3,test_3,20,10,30,100000,0.08,out);
//MoneyMenagement.moneyMenagementRecount_N_xTEST(3,test_3,27,10,30,100000,0.08,out);
gf gf_test=new gf();
gf_test.getDataSet2(test_3,out);
gf_test.main_run();
}
}