如何在这个股票利润最大化代码中实现卖空条件?
How to achieve shortsell condition in this stock profit maximisation code?
这是我编写的代码,用于在价格最低时买入股票,在价格最高时卖出。我想在这里实施卖空条件,就像我想在购买之前卖出一样。
考虑一周的这组股票价格。
3 10 4 1 9 3 2
现在我想在10的时候卖出,1的时候买入,实现9的盈利。
但是我的代码在价格为1时买入并在9时卖出。我可以通过搜索最大数量和最小数量来获得最大利润。但想通过下面的逻辑实现,想知道下面的什么条件不允许我做空。
long profit=a[1]-a[0];
long minima=a[0];
for(long i=1; i<noOfDays; i++)
{
if(a[i]-minima>profit)
{
profit=a[i]-minima;
}
if(a[i]<minima)
{
minima=a[i];
}
}
cout<<profit;
如果你允许卖空,你的利润总是=max(array) - min(array)
,无一例外。
这是我编写的代码,用于在价格最低时买入股票,在价格最高时卖出。我想在这里实施卖空条件,就像我想在购买之前卖出一样。 考虑一周的这组股票价格。
3 10 4 1 9 3 2
现在我想在10的时候卖出,1的时候买入,实现9的盈利。
但是我的代码在价格为1时买入并在9时卖出。我可以通过搜索最大数量和最小数量来获得最大利润。但想通过下面的逻辑实现,想知道下面的什么条件不允许我做空。
long profit=a[1]-a[0];
long minima=a[0];
for(long i=1; i<noOfDays; i++)
{
if(a[i]-minima>profit)
{
profit=a[i]-minima;
}
if(a[i]<minima)
{
minima=a[i];
}
}
cout<<profit;
如果你允许卖空,你的利润总是=max(array) - min(array)
,无一例外。