Insider Transactions provider: GetDetail question
Author: coppola
Creation Date: 8/25/2014 1:05 PM
profile picture

coppola

#1
hi,

when trying to access the details of a fundamental item with the GetDetail method, it seems not to work!


I tested this with the insiderTransaction data (see also my last ticket).
printing the whole value of the item works:
CODE:
Please log in to see this code.


also accessing the value or the date works:
CODE:
Please log in to see this code.


but when trying to access the detail, for example like this

CODE:
Please log in to see this code.


nothing comes back. I tried this also with other access parameters described in the GetDetail
Quick Reference without luck.

so the questions are:

1)what is the problem here. have the access parameters changed?

2)can the names of these parameters only be found in some documentation?
i hope not. I think they could be part of the API of the item. for example something like
insiderTransaction.GetParameterNames());



thanks
profile picture

Eugene

#2
1 - As you can find in the provider's online guide in the Wiki, the following extra details about a transaction are reported by the provider:

QUOTE:
actual trade date, insider name/firm, and total proceeds.


However, the field names for use with GetDetail() were not reflected in the Wiki so figuring them out was not obvious. They are officer, proceeds, and psdate. This information has just been added. Obviously, .Value already returns the number of shares so there's no separate "shares" (or whatever else) field for that.

2 - One can't find specific information in the QuickRef on what fields a fundamental provider exposes if it's not built-in. For any given provider, we document the fields in the Wiki (if applicable).
profile picture

coppola

#3
hi,

1)ok, the documentation is updated, fine!
QUOTE:

"2 - One can't find specific information in the QuickRef on what fields a fundamental provider exposes if it's not built-in."


no. in the quickreference when opening getdetail, you have the description of the access parameters ...

and i think that is a problem. you have to keep in think your whole documentation whenever a parameter changes.
thats why i suggested of putting the parameternames in the API of the ifundamental item ...

regards
coppola
profile picture

Eugene

#4
GetDetail in the QuickRef focuses on the Fidelity fundamental provider's (WLP exclusive) item names. At the time of QR creation, there weren't any other. Item (field) names depend on fundamental provider, and it's not practical to update the QR every time we add or update a fundamental provider. Especially considering that they (extensions) are not part of Wealth-Lab.

In an ideal world, I agree that your point about having an API call to return the fields on a per provider basis would be reasonable. Unfortunately, it's highly unlikely that this is going to happen because there are many higher priority tasks. Please use the Wiki to look this information up.
profile picture

LenMoz

#5
RE: (coppola)
QUOTE:
2)can the names of these parameters only be found in some documentation?
i hope not. I think they could be part of the API of the item. for example something like
insiderTransaction.GetParameterNames());


This would be very useful for me. Here's one idea along those lines. Develop a new function in the "Fundamental Data" category - my idea is below. Perhaps this idea can be improved upon and submitted as an improvement request.

===========================================================================================
GetFundamentalNames

List<string> GetFundamentalNames ();

Returns a List of all unique fundamental names present in the current symbol's data at any date. Use GetNextFundamentalItem to verify data availability at a specific bar.


Example Usage (based on QuickRef for "GetNextFundamentalItem"):
CODE:
Please log in to see this code.
profile picture

Eugene

#6
Thanks for the input. Like I said, even if we filed coppola's request, it would get assigned a Low priority - read: get deferred due to low business value.
profile picture

LenMoz

#7
In my experience, except for one, "Outlier Trades, Adjusted", ideas seem to be rejected without much thought. My three Neural Network tickets are over a year old, with no encouraging signs. If you don't intend to work them in my lifetime, cancel them as bad ideas.

What kind of ideas have "business value"? <<<frustrated>>>
profile picture

Eugene

#8
Your NN tickets are not rejected. Usually, we (MS123 LLC) are quick to implement new features and fix bugs in our products (extensions) and services (WealthSignals). Nevertheless, our staff - including our senior programmer a.k.a. Neuro-Lab author - has been busy full-time on an exciting new project that has taken precedence over everything else like it happened with WS earlier. Although our manpower is limited, all your ideas will be reviewed eventually.

On the other hand, proposed modifications to the WL thick client are a different animal because Fidelity Investments (who owns the product) has a decision making process that prioritizes tasks based on their business value. Unless an issue is a high or critical bug, one can not realistically expect a speedy resolution. The rationale here is that adding a new method like coppola's that may only be slightly useful will get it a Low priority with a low chance to work out. There are even higher importance issues that get delayed for many releases.


Now back to GetFundamentalNames. On a second look, the task seems doable without having to submit a WL enhancement request. I will include GetFundamentalNames in the upcoming release of Community Components (early September).
profile picture

coppola

#9
i called this GetParameterNames, LenMoz called it GetFundamentalNames.
its the same thing!
right?!
profile picture

Eugene

#10
No it's not.

What you were asking for is a collection of internal fields of a FundamentalItem object available via GetDetail. This list isn't exposed anyhow. There is no convention across fundamental data providers with regard to the details of a FundamentalItem. Every provider can have its own: for a dividend provider, this could include declaration/record/payable dates, for an analyst ratings provider, it could be the firm name and the previous rating. These data are secondary and informal (could be strings). Like I said above, you don't even need a "shares" detail to access the number of shares in an insider transaction because .Value takes care of that.

What LenMoz requested is the list of fundamental item names - the one you pass to Get(Next)FundamentalItem. On the contrary, this stuff is conventional and can be extracted with little programming effort.
profile picture

LenMoz

#11
QUOTE:
What LenMoz requested is the list of fundamental item names


Correct, I was proposing a low effort (for WL support) universal method of discerning the data names available for a symbol. On my side, I'll write a universal script to display the names. From the names I can pretty much guess the meanings, and display them on a chart to determine the scale, data depth(years avail), and frequency of update. Especially useful if I decide to use a new data provider. No effort for WL support if they add a brand new data provider.

Len
profile picture

coppola

#12
ok.

i did not check your coding example in detail ...

so our ideas where just similar from a conceptual point of view.

which is retrieving parameters (names) for accessing data.
the accessible data in your case is the item, in my case it's the data of the item.
profile picture

fairone99

#13
Hi!

Within the InsiderCow Dataset, is there any data (name/value pair) for the insider's job title within the company? If there is, what is the data name for that? I can not seem to find it...

Thanks,


Alex
profile picture

Eugene

#14
Alex,

No, there's not. To confirm that, please see my very first reply above (post #2). It, as well as the online guide it points at, satisfies the question.
profile picture

Eugene

#15
UPDATE

Job title seems to be available in the data feed, though. Adding "relationship" field seems feasible w/o breaking backward compatibility. Look forward to it in library's next release as "relationship".