fbpx

Proper video demo of technical analysis trend line via regression in Matlab with source code

(Last Updated On: September 30, 2014)

Proper video demo of technical analysis trend line via regression in Matlab with source code

I finally achieved this via a simple regression line, why oh why do I complicated things unecessarily ? This is my of internal trading system

Join my FREE newsletter to see how I progress with this new system I am working on

 

Source code:

function [ clrev ] = fetchYahoo( sym )
%FETCHYAHOO Summary of this function goes here
%   Detailed explanation goes here
c = yahoo;
d = fetch(c,sym,’1/1/2010′,’9/29/2014′)
close(c)
cl=d(:,5); %close
clrev=flipud(cl);
end

—-

function trendline(Y1)
%CREATEREND(Y1)
%  Y1:  vector of y data

%  Auto-generated by MATLAB on 30-Sep-2014 00:06:07

% Create figure
figure1 = figure;

% Create axes
axes1 = axes(‘Parent’,figure1);
box(axes1,’on’);
hold(axes1,’all’);

% Create plot
plot1 = plot(Y1,’Parent’,axes1,’DisplayName’,’data1′);

% Get xdata from plot
xdata1 = get(plot1, ‘xdata’);
% Get ydata from plot
ydata1 = get(plot1, ‘ydata’);
% Make sure data are column vectors
xdata1 = xdata1(:);
ydata1 = ydata1(:);

% Remove NaN values and warn
nanMask1 = isnan(xdata1(:)) | isnan(ydata1(:));
if any(nanMask1)
    warning(‘GeneratedCode:IgnoringNaNs’, …
        ‘Data points with NaN coordinates will be ignored.’);
    xdata1(nanMask1) = [];
    ydata1(nanMask1) = [];
end

% Find x values for plotting the fit based on xlim
axesLimits1 = xlim(axes1);
xplot1 = linspace(axesLimits1(1), axesLimits1(2));

fitResults1 = polyfit(xdata1, ydata1, 1);
% Evaluate polynomial
yplot1 = polyval(fitResults1, xplot1);
% Plot the fit
fitLine1 = plot(xplot1,yplot1,’DisplayName’,’   linear’,’Parent’,axes1,…
    ‘Tag’,’linear’,…
    ‘Color’,[1 0 0]);

% Set new line in proper position
setLineOrder(axes1, fitLine1, plot1);

% Create legend
legend(axes1,’show’);

%————————————————————————-%
function setLineOrder(axesh1, newLine1, associatedLine1)
%SETLINEORDER(AXESH1,NEWLINE1,ASSOCIATEDLINE1)
%  Set line order
%  AXESH1:  axes
%  NEWLINE1:  new line
%  ASSOCIATEDLINE1:  associated line

% Get the axes children
hChildren = get(axesh1,’Children’);
% Remove the new line
hChildren(hChildren==newLine1) = [];
% Get the index to the associatedLine
lineIndex = find(hChildren==associatedLine1);
% Reorder lines so the new line appears with associated data
hNewChildren = [hChildren(1:lineIndex-1);newLine1;hChildren(lineIndex:end)];
% Set the children:
set(axesh1,’Children’,hNewChildren);

 

NOTE I now post my TRADING ALERTS into my personal FACEBOOK ACCOUNT and TWITTER. Don't worry as I don't post stupid cat videos or what I eat!
Don't miss out!
Get my TRADE LIKE A BOSS 2 PDF Books

You will received instantly the download links.

Invalid email address
Give it a try. You can unsubscribe at any time.

NOTE!

Check NEW site on stock forex and ETF analysis and automation

Scroll to Top