PureBytes Links
Trading Reference Links
|
Ron,
One of the best things about WLD was their community and website...it really
encouraged folks to participate and help each other, that is why the product
became so popular. I see the AB community growing and participating in a
similar manner and I hope it continues. I still have my issues with the
yahoo forum (in terms of user friendliness and manageability) and would
prefer a dedicated website catered to users for various reasons...hopefully
as the community grows, that will happen.
BTW, if no one converts the code posted to a true COM dll, I will see if can
get a copy of VB6 and do it. Right now it works for me, but unless users
have the .NET framework installed on their computer, it won't for them. It
can also be easily modified to return any fundamental data from yahoo I
believe...
-----Original Message-----
From: mrdavis9 [mailto:mrdavis9@xxxxxxxxxx]
Sent: Thursday, November 18, 2004 1:35 AM
To: amibroker@xxxxxxxxxxxxxxx
Subject: Re: [amibroker] Re: Float Analysis Alerts
Dimension, I once commented that using Amibroker is a Camelot experience.
This work that you did in creating this DLL only reinforces my attitude that
this Amibroker Yahoo community is the greatest. Ron D
----- Original Message -----
From: Dimension
To: amibroker@xxxxxxxxxxxxxxx
Sent: Thursday, November 18, 2004 12:10 AM
Subject: RE: [amibroker] Re: Float Analysis Alerts
Brian, Good news and bad news
GOOD NEWS: I was able to create a dll which could be passed a
ticker/symbol
and return the Float (and other fundamentals).
BAD NEWS: I don't think many will be able to use, because of what I was
using to create the DLL. I used Visual Studio .NET to create the dll in
using C#. It turns out the DLLs created by VS.NET are not true COM dlls,
but can be compiled in a way to allow them to work with software that
"accepts" COM objects. The problem...you need to have the .NET framework
installed for it to work.
In any event, the important point is it can be done. I will post the code
in
case someone wants to take a stab at converting to a VB6 COM dll (which
most
should be able to use)...and maybe add or clean it up.
--------------------------------------------------------
HERE IS A SAMPLE AFL CODE ON HOW TO CALL IT FROM AMIBROKER:
fd = CreateObject( "SecurityFundamentals.Fundamentals" );
fd.setURL ("http://finance.yahoo.com/q/ks?s=");
fd.setTicker ("YHOO");
fd.scrapeFundamentals();
AddColumn( fd.getFloat( ) , "float" );
AddColumn( fd. getOutstandingShares( ) , "float" );
Filter = 1; //streak > 0;
---------------------------------------------------------
HERE IS THE SOURCE OF THE DLL
#region Using directives
using System;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;
#endregion
namespace SecurityFundamentals
{
public class Fundamentals
{
private string _url = "http://finance.yahoo.com/q/ks?s=";
//default
private string _ticker = "";
private float _float;
private long _outshares;
public Fundamentals( )
{
}
public void setURL( string url )
{
_url = url;
}
public void setTicker( string ticker )
{
_ticker = ticker;
}
public float getFloat( )
{
return ( _float );
}
public long getOutstandingShares( )
{
return ( _outshares );
}
public void scrapeFundamentals( )
{
scrapeFundamentals( _url + _ticker );
}
public void scrapeFundamentals( string url, string ticker )
{
scrapeFundamentals( url + ticker );
}
public void scrapeFundamentals( string fullUrl )
{
string html = getHtml( fullUrl );
parseHtml( html );
}
private string getHtml( string url )
{
string result;
WebResponse response;
HttpWebRequest webRequest = ( HttpWebRequest )
WebRequest.Create( url );
webRequest.KeepAlive = true;
webRequest.Method = "GET";
response = webRequest.GetResponse( );
StreamReader reader = new StreamReader(
response.GetResponseStream( ), System.Text.Encoding.UTF7 );
result = reader.ReadToEnd( );
reader.Close( );
return ( result );
}
private void parseHtml( string html )
{
string FLOAT_PATTERN =
"(<\\s*td[^>]*>Float:.*?\\s*>.*?>)([\\d|\\.].*?[^a-zA-Z])([a-zA-Z]*)<";
string OUTSHARES_PATTERN = "(<\\s*td[^>]*>Shares
Outstanding:.*?\\s*>.*?>)([\\d|\\.].*?[^a-zA-Z])([a-zA-Z]*)<";
Regex regx = new Regex( FLOAT_PATTERN );
Match match = regx.Match( html );
if ( match.Success )
{
string numb = match.Groups[ 2 ].Value;
string unit = match.Groups[ 3 ].Value;
_float = convertValue( numb, unit );
}
}
private float convertValue( string numb, string unit )
{
long multiplier;
float val = System.Convert.ToSingle( numb );
switch ( unit )
{
case "M":
multiplier = 1000000;
break;
case "B":
multiplier = 1000000000;
break;
default:
multiplier = 1;
break;
}
return ( multiplier * val );
}
}
}
-----Original Message-----
From: Brian [mailto:cadvantag@xxxxxxxxxxxxxx]
Sent: Tuesday, November 16, 2004 7:08 PM
To: amibroker@xxxxxxxxxxxxxxx
Subject: [amibroker] Re: Float Analysis Alerts
Dimension,
I would be very interested in getting data like "Float" from sites
like Yahoo or MoneyCentral.
Low Float stocks with Good Earnings/Revenue has been some of the
hottest stocks out there. (Right now that is)
Do you know how to create a dll that would extract "Float" data?
Thanks,
Brian
--- In amibroker@xxxxxxxxxxxxxxx, Dimension <dimension@xxxx> wrote:
> If you find nothing regarding this, let me know...i have an idea
of how to
> do this, but it would involve a script function or dll add-in to
pull the
> Float from some site like yahoo. The system I was think off would
track
> when the volume traded over a certain period exceeds the float. I
have
> found that when spikes in volume only low float stocks occur, the
tend to
> become ST momo plays.
>
> While I can pretty much figure out how to get the latest daily
float for a
> security, I don't know of any where that offers historical float
(or any
> other fundamentals), does anyone?
>
> -----Original Message-----
> From: Christoper [mailto:turkey@x...]
> Sent: Tuesday, November 16, 2004 12:07 PM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: [amibroker] Re: Float Analysis Alerts
>
>
>
> Try the Amibroker library...
> http://www.amibroker.com/library/
>
>
> --- In amibroker@xxxxxxxxxxxxxxx, thechemistrybetweenus@xxxx wrote:
> >
> >
> > Has anyone been able to develop a method in AFL that allows
alerts
> for
> > a float analysis indicator? I have tried searching past
messages,
> with
> > no luck.
>
>
>
>
>
>
> Check AmiBroker web page at:
> http://www.amibroker.com/
>
> Check group FAQ at:
> http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> Yahoo! Groups Links
Check AmiBroker web page at:
http://www.amibroker.com/
Check group FAQ at:
http://groups.yahoo.com/group/amibroker/files/groupfaq.html
Yahoo! Groups Links
[Non-text portions of this message have been removed]
Check AmiBroker web page at:
http://www.amibroker.com/
Check group FAQ at:
http://groups.yahoo.com/group/amibroker/files/groupfaq.html
Yahoo! Groups Links
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.796 / Virus Database: 540 - Release Date: 11/14/2004
[Non-text portions of this message have been removed]
Check AmiBroker web page at:
http://www.amibroker.com/
Check group FAQ at:
http://groups.yahoo.com/group/amibroker/files/groupfaq.html
Yahoo! Groups Links
------------------------ Yahoo! Groups Sponsor --------------------~-->
$9.95 domain names from Yahoo!. Register anything.
http://us.click.yahoo.com/J8kdrA/y20IAA/yQLSAA/GHeqlB/TM
--------------------------------------------------------------------~->
Check AmiBroker web page at:
http://www.amibroker.com/
Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/amibroker/
<*> To unsubscribe from this group, send an email to:
amibroker-unsubscribe@xxxxxxxxxxxxxxx
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|